7

我有以下

<TableRow xmlns:android="http://schemas.android.com/apk/res/android"
          android:id="@+id/admin_row"
          android:layout_width="fill_parent"
          android:layout_height="wrap_content"
          android:gravity="center_horizontal">
    <RelativeLayout android:layout_width="fill_parent"
                    android:layout_height="fill_parent"
                    android:orientation="horizontal"
                    android:background="@color/silver">

我动态填充表格,但相对布局为银色,它只跨越大约 3/4 的表格行。如果我放置一个水平方向的 LinearLayout,它会完全跨越,但如果我将其更改为垂直,则会出现同样的问题。我需要表格行中的相对布局,因为我需要这样的东西:

价值
细节更多细节。

关于让相对布局跨越表格行的任何想法?

4

3 回答 3

11

尝试在 TableLayout 标签上设置 android:stretchColumns="0" 或 android:stretchColumns="*" 。

于 2010-04-28T13:50:25.207 回答
6

所以我暂时离开了这个问题,但它又出现了。重申一下,我看到的问题是,无论我将它的宽度和高度设置为什么,表格行中的相对布局都不会跨越整个行。我找到了一个解决方案,它强制任何布局完全(水平)跨越表格行:

<TableRow xmlns:android="http://schemas.android.com/apk/res/android"
          android:id="@+id/detail_row"
          android:layout_width="fill_parent"
          android:layout_height="wrap_content">
    <RelativeLayout android:layout_height="fill_parent"
                    android:layout_width="0dp"
                    android:layout_weight="1"
                    android:orientation="horizontal">

请注意,这似乎与表行 java 文档状态直接矛盾:

TableRow 的子项不需要在 XML 文件中指定 layout_width 和 layout_height 属性。TableRow 始终强制这些值分别为 FILL_PARENT 和 WRAP_CONTENT。

于 2010-02-02T17:20:21.120 回答
1

您应该将android:background="@color/silver"属性放在 TableRow 上。

我对 ScrollView 中的 LinearLayout 也有同样的问题。

希望能帮助到你,

皮棉

于 2010-01-19T20:37:58.600 回答