Android TextView有多行

时间:2012-10-11 16:06:13

标签: android android-layout textview

我想要一个应分为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

问题:

  1. 它与Vishal和Vyas之间的空格不起作用。
  2. android:layout_width="70dp"是加密编码的,可以有任意名称,包含n个字符,而不是VishalVyas
  3. 请建议。

    加了: 如果我需要编写一个自定义TextView来实现这一点,那就没问题了,但我需要一些指导。

    提前致谢。

4 个答案:

答案 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的文本显示在两行或更多行中......