Tengo un TableView llamado tabla. initialiseDTable() añade la primera fila con un fondo rojoCrear un TableView con una fila de encabezado fijo (no se desplaza)
META
-
Prevenir la fila de encabezado de desplazamiento (trabajando bien)
-
Keep la fila del encabezado con el mismo ancho de cada TextView que da la sensación que es el hijo de tabla (no trabajar)
attemp
Mi intento era crear un tableview antes de la ScrollView y poblar unaTabla luego extraer la fila de encabezado e insertarlo como un niño de esta mesa de trabajo.
código para agregar fila de encabezado A LA MESA
public void initialiseDTable() {
LayoutInflater inflater = getLayoutInflater();
TableRow row = (TableRow) inflater.inflate(R.layout.table_row, dTable,
false);
View v = (View) inflater.inflate(R.layout.table_cell, row, false);
TextView A = (TextView) v.findViewById(R.id.table_cell_text);
A.setText(tag1);
row.addView(v);
v = (View) inflater.inflate(R.layout.table_cell, row, false);
A = (TextView) v.findViewById(R.id.table_cell_text);
A.setText(tag2);
row.addView(v);
v = (View) inflater.inflate(R.layout.table_cell, row, false);
A = (TextView) v.findViewById(R.id.table_cell_text);
A.setText(tag3);
row.addView(v);
v = (View) inflater.inflate(R.layout.table_cell, row, false);
A = (TextView) v.findViewById(R.id.table_cell_text);
A.setText(tag4);
row.addView(v);
if (this.showEST) {
v = (View) inflater.inflate(R.layout.table_cell, row, false);
A = (TextView) v.findViewById(R.id.table_cell_text);
A.setBackgroundColor(Color.RED);
A.setText(tag5);
row.addView(v);
}
dTable.addView(row);
}
CÓDIGO
public void updateATable() {
aTable.removeAllViews();
initialiseATable();
for (int i = 0; i < newA.size(); i++)
aTable.addView(newA.get(i)); //newA is an ArrayList <TableRow>
View view = aTable.getChildAt(0);
aTable.removeViewAt(0);
aTableH.removeAllViews();
aTableH.addView(view,new LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.WRAP_CONTENT));
}
XML
<LinearLayout android:orientation="vertical"
android:layout_width="fill_parent" android:layout_height="fill_parent"
android:gravity="center" android:id="@+id/aLL">
<TableLayout android:shrinkColumns="5"
android:stretchColumns="1,2,3,4" android:layout_height="wrap_content"
android:layout_width="wrap_content" android:id="@+id/aTableH">
</TableLayout>
<ScrollView android:layout_width="fill_parent"
android:layout_height="wrap_content" android:id="@+id/aTableSV">
<TableLayout android:shrinkColumns="5"
android:stretchColumns="1,2,3,4" android:layout_height="fill_parent"
android:layout_width="fill_parent" android:id="@+id/aTable">
</TableLayout>
</ScrollView>
</LinearLayout>
Acabo de desnatar y vi que la imagen parece que todavía no es perfecta. Lo leeré pronto. Ya lo implementé a mi manera. Puede echarle un vistazo a https://market.android.com/details?id=mobi.foo.beirutairport –
Gracias @MarkAllison su blog realmente me ayudó:) –