我想要一个应分为4行的TextView。例如,
Vishal Vyas
Having
342
Reputation
注意,重力应该是center_horizontal
我试过以下:
<TextView
android:gravity="center_horizontal"
android:id="@+id/lblUserRep"
android:layout_width="70dp"
android:layout_height="wrap_content"
android:lines="4"
android:maxLines="4"
android:text="VishalVyas Having 342 Reputation" >
</TextView>
这个有效!但产生以下输出:
VishalVyas
Having
342
Reputation
问题:
android:layout_width="70dp"
是加密编码的,可以有任意名称,包含n个字符,而不是VishalVyas
。请建议。
加了:
如果我需要编写一个自定义TextView
来实现这一点,那就没问题了,但我需要一些指导。
提前致谢。
答案 0 :(得分:14)
我认为这是因为“Vishal Vyas”超过70dp。相反,在宽度上做wrap_content
并使用换行符而不是换行(即“Vishal Vyas \ n342 \ nReputation”)
答案 1 :(得分:11)
您应该能够插入换行符\n
来控制拆分的位置。完成此操作后,您可以将TextView
扩展为更宽,以便它可以容纳更长的用户名,但仍然可以在正确的位置中断。
答案 2 :(得分:5)
android:lines="2"
android:minLines="2"
android:singleLine="false"
即使Android Studio警告android:singleLine=false
已被弃用,也要保留它,并且可以根据文本的长度为文本框设置所需的行数
答案 3 :(得分:1)
我这样做了:
TextView的容器:
android:layout_width="match_parent"
android:layout_height="match_parent"
TextView:
android:layout_width="match_parent"
android:layout_height="wrap_content"
然后,
TextView的文本显示在两行或更多行中......