如何在TableRow中“锁定”宽度

时间:2017-10-11 07:59:15

标签: android layout tablerow

我有这个(部分)布局:

<TableRow
    android:id="@+id/trLocation"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <TextView
        android:id="@+id/textView3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="@string/location"/>

    <TextView android:layout_width="wrap_content"
              android:textSize="50dp"
              android:layout_height="wrap_content"
              android:text="1234"
              android:id="@+id/tvLocation"
              android:layout_weight="1"
        />
</TableRow>

现在,当我将tvLovation中的数据设置得太长时,它会“推”textView3越来越小,直到内部文本被裁剪,或者流到下一行,如果maxLines未设置。

如何确保第一列的宽度永远不会小于我最长的文本?

ellipsize添加到tvLocation无效。

2 个答案:

答案 0 :(得分:0)

通过设置android:layout_width =“0dp”将textView3和tvLocation的宽度设置为零。

答案 1 :(得分:0)

在视图中使用布局权重时,请根据其方向将其高度或宽度更改为 0dp 。因为使用权重时,会忽略其他属性。

此处视图水平对齐,因为它位于表格行中,因此将android:layout_width更改为 0dp