1. Nimm jetzt an unserem 2. ADVENT-Gewinnspiel teil - Alle Informationen findest Du hier!

TextView in TableRow

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von taiskorgon, 14.06.2012.

  1. taiskorgon, 14.06.2012 #1
    taiskorgon

    taiskorgon Threadstarter Neuer Benutzer

    Beiträge:
    1
    Erhaltene Danke:
    0
    Registriert seit:
    14.06.2012
    Hallo,

    ich versuche, durch eine Liste zu iterieren und eine entsprechende Anzahl TextViews auf dem Bildschirm auszugeben. Soweit funktioniert das auch, nur möchte ich, dass das TextView die übergeordnete TableRow ausfüllt (fill_parent). Das gelingt mir jedoch nicht. Es hat den Anschein, als hätte die übergeordnete TableRow keine Breite (bzw eine Breite von 0) was dazu führt, dass das Textview nicht angezeigt wird.

    Was muss ich machen, damit das TextView die Zeile ausfüllt?

    Code:
    		<TableLayout 
    		    xmlns:android="http://schemas.android.com/apk/res/android"
    	     	android:id="@+id/plist" 
    		    android:layout_width="fill_parent" 
    		    android:layout_height="wrap_content"
    		    android:stretchColumns="1" 
    		    android:shrinkColumns="1" 
    		    android:padding="10dip">
    		</TableLayout>
    
    	private void testvoid(List<String> liste) {
    		TableLayout plist = (TableLayout) findViewById(R.id.plist);
    
    		for (String p : liste) {
    			TableRow row = new TableRow(thisInstance);
    
    			TableLayout.LayoutParams tableRowParams = new TableLayout.LayoutParams(
    					TableLayout.LayoutParams.FILL_PARENT, TableLayout.LayoutParams.WRAP_CONTENT);
    
    			int leftMargin = 0;
    			int topMargin = 0;
    			int rightMargin = 0;
    			int bottomMargin = 5;
    
    			tableRowParams.setMargins(leftMargin, topMargin, rightMargin, bottomMargin);
    
    			row.setLayoutParams(tableRowParams);
    
    			TextView tv = new TextView(thisInstance);
    			tv.setTextColor(Color.BLUE);
    			tv.setText(Html.fromHtml(p));
    
    			int resid = R.drawable.gradient_shape_green;
    			row.setBackgroundResource(resid);
    
    			tv.setTextSize(14);
    			tv.setPadding(10, 10, 10, 10);
    			tv.setTag(p);
    			tv.setBackgroundColor(Color.MAGENTA);
    			tv.setOnClickListener(HandleTvClick);
    			tv.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.FILL_PARENT,LinearLayout.LayoutParams.WRAP_CONTENT));
    			row.addView(tv);
    
    			plist.addView(row, tableRowParams);
    		}
    	}
    
    tia
    Tai Skorgon
     
    Zuletzt bearbeitet: 19.06.2012

Diese Seite empfehlen