我在LinearLayout(水平方向)中有两个TextView。我需要的是,我的第一个TextView总是有宽度将它的内容包装在一行中,而第二个动态加载的TextView使用剩余的空间来显示它的内容,如果它变成多行则无关紧要。 / p>
当我使用下面的代码时,当内容较少时它显示完美但当第二个TextView的内容变得更长时,它首先掩盖TextView: - (
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:gravity="right"
android:orientation="horizontal">
<TextView
android:id="@+id/itemdescription"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:gravity="right"
android:padding="5dp"
android:textSize="18sp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right|center_vertical"
android:gravity="right|center_vertical"
android:padding="5dp"
android:text="توضیحات:"
android:textSize="18sp" />
</LinearLayout>
你帮我解决了我的问题吗?
提前谢谢
答案 0 :(得分:2)
利用重量。为每个文本视图赋予相同的权重,并在它们之间留出一小部分:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:weightSum="2"
android:orientation="horizontal">
<TextView
android:id="@+id/itemdescription"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:padding="5dp"
android:textSize="18sp" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:padding="5dp"
android:text="توضیحات:"
android:textSize="18sp" />
</LinearLayout>
答案 1 :(得分:0)
尝试将最大宽度设置为第二个textview。您可以在xml文件中执行此操作。只需添加: 机器人:maxWidth =&#34; 100dp&#34;
答案 2 :(得分:0)
尝试使用如下的权重属性:
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="right" >
<TextView
android:id="@+id/itemdescription"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_weight="0"
android:text=":FIELD" />
</LinearLayout>
&#13;