【问题标题】:How to fix the position of LinearLayout item?如何固定 LinearLayout 项目的位置?
【发布时间】:2018-01-20 10:38:40
【问题描述】:

我创建了一个带有 5 个 TextView 的水平线性布局

我设置的每个TextView android:layout_weight="1"

LinearLayout 是android:layout_width="match_parent"

当我运行应用程序时,它们被平均分配

如果我在运行时为其中一个 TextView 元素设置更长的文本,另一个 textview 将改变位置

我可以固定所有位置吗?

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content">
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:gravity="center"
        android:text="20"/>
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:gravity="center"
        android:text="20"/>

    <TextView
        android:id="@+id/change_value"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:gravity="center"
        android:onClick="changeValue"
        android:text="20" />
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:gravity="center"
        android:text="20"/>
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:gravity="center"
        android:text="20"/>
</LinearLayout>



public void changeValue(View v){
    TextView tv=(TextView)v;
    tv.setText("zzzzzzzzzzzz");
}

【问题讨论】:

  • 你能粘贴你的xml代码吗?
  • 你能把你的xml代码粘贴到这里吗
  • 代码在哪里?

标签: android android-layout android-linearlayout


【解决方案1】:

试试这个,

 <LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal">
    <TextView
        android:text="first"
        android:layout_weight="1"
        android:layout_width="0dp"
        android:layout_height="wrap_content" />
    <TextView
        android:text="first"
        android:layout_weight="1"
        android:layout_width="0dp"
        android:layout_height="wrap_content" />
    <TextView
        android:text="first"
        android:layout_weight="1"
        android:layout_width="0dp"
        android:layout_height="wrap_content" />
    <TextView
        android:text="first"
        android:layout_weight="1"
        android:layout_width="0dp"
        android:layout_height="wrap_content" />
    <TextView
        android:text="first"
        android:layout_weight="1"
        android:layout_width="0dp"
        android:layout_height="wrap_content" />
</LinearLayout>

我正在一些文本字段上添加更多文本

【讨论】:

    【解决方案2】:

    设置下面的代码而不是 layout_width :

    android:layout_width="0dip"
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多