0

我已经尝试了将表格布局划分为 2 列或更多列的方法,但我不知道如何,有什么帮助吗?

<TableLayout
    android:id="@+id/exercisetableviewing"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_x="5dp"
    android:background="@layout/border"
    android:layout_y="289dp" >
</TableLayout>

我使用以下方法在表中添加一行:

private void fillTable(TableLayout tableLayout, String[] items) {
    for (int i = 0; i < items.length; i++) {

        TextView itemText = new TextView(FillingActivity.this);
        itemText.setText(items[i]);
        TableRow row = new TableRow(FillingActivity.this);
        row.addView(itemText);
        if(i % 2 == 1)
            row.setBackgroundColor(color.LightGreen);

        tableLayout.addView(row);

    }
}
4

1 回答 1

0

您应该为您的文本视图定义一个 xml,其中包含:

<TextView
    android:id="@+id/textView"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_weight="1"/>

“权重”属性用于表示所有文本视图将在行中使用相同的宽度。TableRow 扩展了 LinearLayout,因此您可以使用 LinearLayout 的属性。然后像这样在代码中扩展您的视图:

TextView itemText = LayoutInflater.from(FillingActivity.this).inflate(R.layout.my_text_item, null);

现在,在您的代码中,您只需向 TableRow 添加一个 TextView。这是正常行为吗?您谈论两列,但您只在一行中添加一列...

于 2012-05-07T16:09:50.067 回答