为什么这个嵌套的LinearLayout不起作用?

时间:2014-07-28 16:20:14

标签: android android-layout android-linearlayout

我正在尝试将LinearLayout嵌套在LinearLayout中。

这是我的代码。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:orientation="horizontal"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        >

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="ABC"
            />

        <EditText
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text=""
            />
    </LinearLayout>

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:orientation="horizontal"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        >

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="ABC"
            />

        <EditText
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text=""
            />
    </LinearLayout>

</LinearLayout>

我的想法是让LinearLayout是垂直的,这样就可以让我拥有一堆行。

每一行都包含一个标签后跟一个文本框..或者更确切地说,一个TextView后跟一个EditText

因此,在垂直LinearLayout中,我可以嵌套多个Horizo​​ntal LinearLayout对象。这就是主意。但它还没有奏效。

目前我有 enter image description here

我希望并希望我的代码能够生成第二行

但第二行没有出现。

我的第二个水平LinearLayout(我嵌套的LinearLayout对象的第二个,似乎没有任何效果。

2 个答案:

答案 0 :(得分:1)

不要在您的第一个孩子android:layout_height="fill_parent"上使用LinearLayout,而是使用android:layout_height="wrap_content"

答案 1 :(得分:1)

它不起作用,因为你在子行中的高度fill_parent。只需使用wrap_content,或为每个“行”提供固定(dp)高度值,或者您可以使用weightSum并为每个行高度提供0dp。 注意:文档说明由于性能不佳,应避免使用嵌套的线性布局。