2010-10-25 175 views
16

我有一个View需要添加一些文本。 所使用的观点是:android在末尾添加'...'textview

<TextView 
    android:layout_marginLeft="10dp" 
    android:layout_width="wrap_content" 
    android:gravity="center_vertical" 
    android:layout_gravity="center" 
    android:maxLines="3" 
    android:layout_height="70dp" 
    android:textColor="#000000" 
    android:textSize="12dp" /> 

这个问题我有是,如果这个文本包含超过3行,它只是显示了三个行,但没有迹象表明它削减了一些线。
我想在第三行的末尾追加'...',如果它削减了一些数据。

+2

你有3个正确的答案,你应该确定一个被接受。 – blindstuff 2010-10-25 18:26:22

回答

37
<TextView android:layout_marginLeft="10dp" 
    android:layout_width="wrap_content" 
    android:gravity="center_vertical" 
    android:layout_gravity="center" 
    android:maxLines="3" 
    android:layout_height="70dp" 
    android:textColor="#000000" 
    android:textSize="12dp" 
    android:ellipsize="end"/> 

使用此代码,它做工精细,代码android:ellipsize="end"将改变这个给你。

+6

这不起作用。该文档指出:如果设置,导致比视图更长的单词宽度很大,而不是在中间断开。在我的测试中,这会导致四行文本视图在第二行后停止显示文本,因为在第二行的末尾应该在中间打破一个单词。椭圆大小不会在第三行之后的textview末尾加点。 – Janusz 2011-01-04 13:37:19

+2

这将适用于android:singleLine =“true”,不适用于android:maxLines – matreshkin 2013-06-14 07:24:57

+0

为我工作。没有问题。 – 2014-08-01 11:29:03

1
android:ellipsize="end" 
+1

add android:scrollHorizo​​ntally =“true” – fedj 2010-10-26 15:41:45

0
<TextView 
android:layout_marginLeft="10dp" 
android:layout_width="wrap_content" 
android:gravity="center_vertical" 
android:layout_gravity="center" 
android:maxLines="3" 
android:layout_height="70dp" 
android:textColor="#000000" 
android:textSize="12dp" 
android:ellipsize="end"/> 

添加机器人:ellipsize = “结束”

+0

感谢您的答案,但仍然有一些问题,我发布在http://stackoverflow.com/questions/4021293/android-append-at-the-end-textview-edit – 2010-10-26 10:56:42