2013-02-18 20 views
10

Sto cercando di allineare gli elementi in una riga della tabella (posizioni sinistra/centro/destra), ma potrei farlo funzionare può qualcuno aiutarmi a guardare sotto frammento ,,,come allineare l'articolo nella riga della tabella (sinistra - centro - destra)

righe tabella

deve allineare textview1 = rimasti textview2 = centro imgview1 = destra

xML per riga della tabella

<?xml version="1.0" encoding="utf-8"?> 
<TableRow xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content"> 


    <TextView 
     android:id="@+id/focast_day" 
     android:layout_width="wrap_content" 
     android:layout_height="fill_parent" 
     android:gravity="left" 
     android:ellipsize="end" 
     android:maxLines="1" 
     android:scrollHorizontally="false" 
     android:singleLine="true" 
     android:text="@string/na_msg" 
     android:textColor="@color/black" 
     android:textSize="18sp" 
     android:textStyle="bold" /> 


    <TextView 
     android:id="@+id/focast_day_temp" 
     android:layout_width="wrap_content" 
     android:layout_height="fill_parent" 
     android:gravity="center" 
     android:ellipsize="end" 
     android:maxLines="1" 
     android:scrollHorizontally="false" 
     android:singleLine="true" 
     android:text="@string/na_msg" 
     android:textColor="@color/black" 
     android:textSize="18sp" 
     android:textStyle="bold" /> 

    <ImageView 
     android:id="@+id/focast_day_skyIcon" 
     android:layout_width="wrap_content" 
     android:layout_height="fill_parent" 
     android:gravity="right" 
     android:scrollHorizontally="false" /> 

</TableRow> 

myTableLayout

codice
 <TableLayout 
      android:id="@+id/weatherforcastTable" 
      android:layout_width="fill_parent" 
      android:stretchColumns="2" 
      android:layout_height="wrap_content" 
      android:layout_below="@+id/today_temp" 
      android:layout_centerHorizontal="true" 
      android:layout_marginTop="34dp" > 
     </TableLayout> 

per la compilazione dei dati da riga della tabella

for (Forecastday forecastday : forcastDayList) { 


         View view = inflater.inflate(R.layout.weather_forcast_day_view, null); 
         TextView focast_day = (TextView) view.findViewById(R.id.focast_day); 
         TextView focast_day_temp = (TextView) view.findViewById(R.id.focast_day_temp); 
         ImageView focast_day_skyIcon = (ImageView) view.findViewById(R.id.focast_day_skyIcon); 

         TableRow row = new TableRow(_appContext); 
         focast_day.setText(fmtDate); 


         focast_day_temp.setText(forecastday.getHigh().getCelsius() +ApplicationConstants.STRING_SPACE +ApplicationConstants.CELSIUS_DEGREES); 
         focast_day_temp.setId(count); 


         focast_day_skyIcon.setImageBitmap(forecastday.getSkyiconBitMap()); 


         row.addView(view); 
         weatherforcastTable.addView(row, new TableLayout.LayoutParams(LayoutParams.WRAP_CONTENT, 
           LayoutParams.WRAP_CONTENT)); 
        } 

risposta

21

Potrebbe provare questo: stretchColumns = "0,1,2" sul TableLayout

<TableLayout 
     android:id="@+id/weatherforcastTable" 
     android:layout_width="fill_parent" 
     android:stretchColumns="0,1,2" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/today_temp" 
     android:layout_centerHorizontal="true" 
     android:layout_marginTop="34dp" > 
</TableLayout> 
2

Questo ha funzionato per me.

<TableRow 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:gravity="center"> 

Spero che sia d'aiuto.

Problemi correlati