当文本变长时,两个带有换行内容的文本视图会互相遮盖
two textview with wrap content mask each other when text become longer
我在 LinearLayout(水平方向)中有两个 TextView。我需要的是,我的第一个 TextView 总是有宽度将它的内容包装在一行中,而动态加载的第二个 TextView 使用 space 的其余部分来显示它的内容,它是否变得无关紧要多行。
当我使用下面的代码时,当内容较少时它显示完美但是当第二个 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>
你能帮我解决我的问题吗?
提前致谢
尝试为您的第二个文本视图设置最大宽度。您可以在 xml 文件中执行此操作。只需添加:
android:maxWidth="100dp"
尝试像这样使用权重属性:
<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>
利用权重。为每个文本视图赋予相同的权重并在它们之间留出小间距:
<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>
我在 LinearLayout(水平方向)中有两个 TextView。我需要的是,我的第一个 TextView 总是有宽度将它的内容包装在一行中,而动态加载的第二个 TextView 使用 space 的其余部分来显示它的内容,它是否变得无关紧要多行。
当我使用下面的代码时,当内容较少时它显示完美但是当第二个 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>
你能帮我解决我的问题吗? 提前致谢
尝试为您的第二个文本视图设置最大宽度。您可以在 xml 文件中执行此操作。只需添加: android:maxWidth="100dp"
尝试像这样使用权重属性:
<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>
利用权重。为每个文本视图赋予相同的权重并在它们之间留出小间距:
<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>