1

这是我的xml:

<RelativeLayout
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                >

            <LinearLayout android:layout_alignParentTop="true"
                          android:layout_height="wrap_content"
                          android:layout_width="fill_parent"
                          android:id="@+id/llRow1" />
            <LinearLayout android:layout_height="wrap_content"
                          android:layout_width="fill_parent"
                          android:layout_below="@+id/llRow1"
                          android:id="@+id/llRow2" />
            <LinearLayout android:layout_alignParentBottom="true"
                          android:layout_height="wrap_content"
                          android:layout_width="fill_parent"
                          android:id="@+id/llRow3" >
</RelativeLayout>

我想要的是: - 这 3 个“行”必须共享屏幕的高度 - 但还有一个额外的:当我将第三行 (llRow3) 可见性设置为 GONE 时,只有 row1 和 row2 必须共享屏幕高度。

怎么可能做到这一点?

4

1 回答 1

2

为所有这些设置一个相同layout_weight的值。因此,如果您将第三个的可见性设置为 GONE,它们仍将具有这些权重。编辑:将 ParentLayout 更改为 LinearLayout,或者如果您需要 RelitiveLayout,那么您可以将这三个 LinearLayout 包装在另一个 LinearLayout 中并为它们设置权重,如下所示:

 <RelativeLayout 
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" >

        <LinearLayout
            android:id="@+id/llRow1"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:layout_weight="1" />

        <LinearLayout
            android:id="@+id/llRow2"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/llRow1"
            android:layout_weight="1" />

        <LinearLayout
            android:id="@+id/llRow3"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:layout_weight="1" >
        </LinearLayout>
    </LinearLayout>

</RelativeLayout>
于 2012-11-03T09:45:52.167 回答