0

我想要这个特殊的表格布局:

餐桌布置

在我当前的布局中,较短的单元格与具有长文本的单元格大小相同:

布局错误

必须怎么做?

它应该看起来像第一张图片。

4

2 回答 2

2

可能有更好的方法可以做到这一点,实际上我以前没有使用过 TableLayout,但下面的 XML 给出了您要求的基本布局:

    <TableLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >

        <TableRow
            android:layout_width="match_parent"
            android:layout_height="wrap_content" >

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_span="4"
                android:layout_weight="1"
                android:text="Text"
                android:gravity="center" />
        </TableRow>

        <TableRow
            android:layout_width="match_parent"
            android:layout_height="wrap_content" >

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="0.25"
                android:text="Text" />

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_span="3"
                android:layout_weight="0.75"
                android:text="Text that is longer than other cells" />
        </TableRow>

        <TableRow
            android:layout_width="match_parent"
            android:layout_height="wrap_content" >

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="0.25"
                android:text="Text" />

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="0.25"
                android:text="Text" />

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="0.25"
                android:text="Text" />

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="0.25"
                android:text="Text" />
        </TableRow>
    </TableLayout>
于 2013-04-11T03:06:51.950 回答
0

Yojimbo,你是对的,但是如果你使用

机器人:布局重量

您必须记住将(在这种特殊情况下) android:layout_width=" wrap_content " 替换为

机器人:布局宽度=“ 0dp ”。

在这里你有一个很好的参考。

于 2013-04-11T14:37:08.477 回答