LinearLayout中的多个LinearLayout无法正常工作

时间:2017-09-07 14:49:02

标签: android android-layout android-linearlayout textview

我在LinearLayout中有几个LinearLayouts,如下所示:

<LinearLayout
android:layout_gravity="center|top"
android:padding="10dp"
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content">

<LinearLayout
    android:orientation="horizontal"
    android:layout_weight="1"
    android:layout_width="0dp"
    android:layout_height="wrap_content">
    <TextView
        android:gravity="center"
        android:layout_marginLeft="10dp"
        android:layout_marginRight="10dp"
        android:layout_width="wrap_content"
        android:layout_height="match_parent" />
    <Spinner
        android:minWidth="100dp"
        android:layout_width="wrap_content"
        android:layout_height="match_parent">

    </Spinner>
</LinearLayout>

<LinearLayout
    android:orientation="horizontal"
    android:layout_weight="1"
    android:layout_width="0dp"
    android:layout_height="wrap_content">
    <TextView
        android:gravity="center"
        android:layout_marginLeft="10dp"
        android:layout_marginRight="10dp"
        android:layout_width="wrap_content"
        android:layout_height="match_parent" />
    <Spinner
        android:minWidth="100dp"
        android:layout_width="wrap_content"
        android:layout_height="match_parent">

    </Spinner>
</LinearLayout>

<LinearLayout
    android:orientation="horizontal"
    android:layout_weight="1"
    android:layout_width="0dp"
    android:layout_height="wrap_content">
    <TextView
        android:gravity="center"
        android:layout_width="wrap_content"
        android:layout_marginLeft="10dp"
        android:layout_marginRight="10dp"
        android:layout_height="match_parent" />
    <Spinner
        android:minWidth="100dp"
        android:layout_width="wrap_content"
        android:layout_height="match_parent">

    </Spinner>
</LinearLayout>

<LinearLayout
    android:orientation="horizontal"
    android:layout_weight="1"
    android:layout_width="0dp"
    android:layout_height="wrap_content">
    <TextView
        android:layout_marginLeft="10dp"
        android:layout_marginRight="10dp"
        android:gravity="center"
        android:layout_width="wrap_content"
        android:layout_height="match_parent" />
    <Spinner
        android:minWidth="100dp"
        android:layout_width="wrap_content"
        android:layout_height="match_parent">

    </Spinner>
</LinearLayout>

</LinearLayout>

现在Android Studio中的设计窗口中的布局看起来很好,但是一旦应用程序被执行,布局就会在设备上显示两次 - 一旦死亡(根本不工作),一次就像应该一样。

我之前在主要的LinearLayout中有一个简单的TextView并且它工作正常,但一旦删除它就不再工作了。

我实际上可以通过添加带有&#34; layout_width&#34;的TextView来消除此行为。和&#34; layout_height&#34;设置为&#34; 0dp&#34;但必须有一个适当的解决方案。我已经尝试使用RelativeLayouts替换LinearLayouts,但这也不起作用。

1 个答案:

答案 0 :(得分:0)

您正在设置

机器人:layout_weight = “1”

不在父LinearLayout中设置weightSum。这是出于目的吗?

另外,我建议您使用ConstraintLayout而不是嵌套的LinearLayouts。