我想在Android中创建带有多列的表格。我看到的大多数示例都是2列。(我是Java和Android的新手。)我需要3-4列,并且应该能够在表中动态添加行。谁能给我提供示例代码。(我在WIN 7中使用Eclipse)
我假设您正在谈论的是TableLayout视图,而不是数据库中的表?
如果是这样,这是一个具有三列三行的表的XML示例。
每个元素在表中创建一行,并且该元素内部的每个视图创建一个“列”。我使用过TextViews,但它们可以是ImageViews,EditText等。
<?xml version="1.0" encoding="utf-8"?> <TableLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id = "@+id/RHE" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="0" android:padding="5dp"> <TableRow android:layout_height="wrap_content"> <TextView android:id="@+id/runLabel" android:text="R" android:layout_height="wrap_content" /> <TextView android:id="@+id/hitLabel" android:text="H" android:layout_height="wrap_content" /> <TextView android:id="@+id/errorLabel" android:text="E" android:layout_height="wrap_content" /> </TableRow> <TableRow android:layout_height="wrap_content"> <TextView android:id="@+id/visitorRuns" android:text="0" android:layout_height="wrap_content" /> <TextView android:id="@+id/visitorHits" android:text="0" android:layout_height="wrap_content" /> <TextView android:id="@+id/visitorErrors" android:text="0" android:layout_height="wrap_content" /> </TableRow> <TableRow android:layout_height="wrap_content"> <TextView android:id="@+id/homeRuns" android:text="0" android:layout_height="wrap_content" /> <TextView android:id="@+id/homeHits" android:text="0" android:layout_height="wrap_content" /> <TextView android:id="@+id/homeErrors" android:text="0" android:layout_height="wrap_content" /> </TableRow> </TableLayout>
要在代码中动态更改这些内容,您需要执行以下操作:
// reference the table layout TableLayout tbl = (TableLayout)findViewById(R.id.RHE); // delcare a new row TableRow newRow = new TableRow(this); // add views to the row newRow.addView(new TextView(this)); // you would actually want to set properties on this before adding it // add the row to the table layout tbl.addView(newRow);