我在构建包含三个子项(其中两个具有可变尺寸)的 Android XML 布局时遇到问题,其中一个子项在跨越其宽度时优先。
<LinearLayout
android:id="@+id/LinearLayout"
android:layout_height="wrap_content"
android:layout_width="match_parent" >
<TextView
android:id="@+id/firstTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:singleLine="true"
android:ellipsize="end"
android:text="bla 1 bla 1 bla 1" />
<TextView
android:id="@+id/secondTextView"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text=", " />
<TextView
android:id="@+id/thirdTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:singleLine="true"
android:text="bla 2 bla 2 bla 2"/>
</LinearLayout>
问题是,我需要这样显示:“bla 1 bla 1 bla 1, bla 2 bla 2 bla 2”。要求是,当没有足够的空间时,只有 firstTextView 会缩小其宽度(类似于:“bla 1 bla ...,bla 2 bla 2 bla 2”)。请记住,thirdTextView 具有可变宽度,因此它可能只包含“bla 2”并且必须紧挨着 secondTextView,而后者又必须位于 firstTextView 的右侧。
我试图避免以编程方式调整宽度。
谢谢。
最佳答案
在你的第一个 textView 上试试这个:
android:layout_width="0dp"
android:layout_weight="1"
当其他 2 个内容被包装时,这将使 View 占据剩余空间
关于android - 具有 3 个可变维度子项的 LinearLayout,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18237374/