子LinearLayouts无法正常显示

时间:2018-03-06 21:37:59

标签: java android xml android-layout android-linearlayout

我有一个LinearLayout - 水平,其中有3个垂直LinearLayout

我将TextView添加到那些LinearLayout的programmaticaly中。这是我的xml:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/hlkurva"
    android:orientation="horizontal"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity$PadyFragment">


        <LinearLayout
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:orientation="vertical"
            android:id="@+id/cesky">


        </LinearLayout>
        <LinearLayout
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:id="@+id/pomlcka"
            android:layout_weight="0.2"
            android:orientation="vertical"
            >

        </LinearLayout>
        <LinearLayout
            android:layout_width="0dp"
            android:id="@+id/latinsky"
            android:layout_weight="1"
            android:layout_height="match_parent"
            android:orientation="vertical">
        </LinearLayout>
</LinearLayout>

这就是Android Studio预览的样子。 [This is how it should look like, on preview it looks correct]

然而,当我运行应用程序时,我得到了这个: [The third Linear Layour is diplaying down]

当我旋转屏幕时,它会持续存在。我尝试了不同的布局权重,我尝试了不同的方式,没有布局权重,我尝试了所有我可以但我从来没有得到3个线性布局显示水平相互如何在预览上看起来像。我非常绝望,请帮忙。

1 个答案:

答案 0 :(得分:0)

我认为您已将错误的观看ID传递给您活动中的findViewById()来电。也许是这样的:

LinearLayout left = findViewById(R.id.cesky);
LinearLayout middle = findViewById(R.id.latinsky); // wrong id here
LinearLayout right = findViewById(R.id.latinsky);

然后,稍后当您将所有-个字符添加到middle列时,您实际 将它们添加到右侧列中,因为您已经意外地将错误的视图分配给middle