当Textview1有多行时,我遇到了一些问题。
示例:textview1有一行,显示了textview2。
但是如果textview1有多行,则textview2不会显示,因为textview1已满。
我的.xml:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" android:layout_height="match_parent">
<RelativeLayout
android:layout_width="match_parent"
android:padding="5dp"
android:layout_height="match_parent">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:layout_marginTop="10dp">
<ImageView
android:layout_width="20dp"
android:layout_height="20dp"
android:id="@+id/img_vote"
android:src="@drawable/vote_t_1"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="xxxxxxdfkldjsklfjsdxxxxxx"
android:id="@+id/tx_poll"
android:layout_marginLeft="10dp"
android:layout_toRightOf="@+id/img_vote"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="ttt"
android:id="@+id/tx_count_vote"
android:gravity="center"
android:textColor="@color/color_white"
android:textSize="@dimen/tx_size_smally"
android:paddingLeft="5dp"
android:paddingRight="5dp"
android:background="@drawable/bg_count_poll"
android:layout_marginLeft="10dp"
android:layout_toRightOf="@+id/tx_poll"/>
</RelativeLayout>
</RelativeLayout>
</RelativeLayout>
如何解决?
答案 0 :(得分:3)
如果并排显示文本视图,则始终建议对文本视图使用权重= 1的线性布局。
试试这个:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="horizontal" >
<TextView
android:id="@+id/textViewprimary"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:text="abcd" />
<TextView
android:id="@+id/textViewSecondary"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:text="efgh" />
</LinearLayout>
答案 1 :(得分:0)
将您的textviews包装为tablerow。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" android:layout_height="match_parent">
<RelativeLayout
android:layout_width="match_parent"
android:padding="5dp"
android:layout_height="match_parent">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:layout_marginTop="10dp">
<ImageView
android:layout_width="20dp"
android:layout_height="20dp"
android:id="@+id/img_vote"
android:src="@drawable/vote_t_1"/>
<TableRow
android:weightSum="1"
android:layout_marginLeft="10dp"
android:layout_toRightOf="@+id/img_vote"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<TextView
android:layout_weight=".60" // here manage the weight/percentage
android:layout_width="0dp"
android:layout_height="wrap_content"
android:text="xxxxxxdfkldjsklfjsdxxxxxx"
android:id="@+id/tx_poll"/>
<TextView
android:layout_weight=".40"// here manage the weight/percentage
android:layout_width="0dp"
android:layout_height="wrap_content"
android:text="ttt"
android:id="@+id/tx_count_vote"
android:gravity="center"
android:textColor="@color/color_white"
android:textSize="@dimen/tx_size_smally"
android:background="@drawable/bg_count_poll"
android:gravity="center"
android:paddingLeft="5dp"
android:paddingRight="5dp"/>
</TableRow>
</RelativeLayout>
</RelativeLayout>
</RelativeLayout>
答案 2 :(得分:0)
这样做
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
android:layout_width="match_parent"
android:padding="5dp"
android:layout_height="match_parent">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:layout_marginTop="10dp"
>
<ImageView
android:layout_width="20dp"
android:layout_height="20dp"
android:id="@+id/img_vote"
android:src="@drawable/vote_t_1"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_toRightOf="@+id/img_vote"
android:weightSum="2">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="xxxxxxdfkldjsklfjsdxxxxxx"
android:id="@+id/tx_poll"
android:layout_marginLeft="10dp"
android:layout_weight="1"/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="ttt"
android:id="@+id/tx_count_vote"
android:textColor="@color/color_white"
android:textSize="@dimen/tx_size_smally"
android:paddingLeft="5dp"
android:paddingRight="5dp"
android:background="@drawable/bg_count_poll"
android:layout_marginLeft="10dp"
android:layout_weight="1"/>
</LinearLayout>
</RelativeLayout>
</RelativeLayout>
答案 3 :(得分:0)
那是因为你有android:layout_height="wrap_content
&#34;在android:id="@+id/tx_poll"
上。当有大量文字时,它会移动你的android:id="@+id/tx_count_vote"
并变得不可见。
您有以下选择:
为tx_poll
TextView添加固定大小。例如:android:layout_width="90dp"
将LinearLayout与layout_weight
答案 4 :(得分:0)
在tx_poll中设置属性android:layout_toLeftOf =“@ + id / tx_count_vote”,你也可以设置textView的maxLength以防止重叠和修复tx_poll textView的区域