我有一个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预览的样子。 [
然而,当我运行应用程序时,我得到了这个: [
当我旋转屏幕时,它会持续存在。我尝试了不同的布局权重,我尝试了不同的方式,没有布局权重,我尝试了所有我可以但我从来没有得到3个线性布局显示水平相互如何在预览上看起来像。我非常绝望,请帮忙。
答案 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
。