当前位置: 代码迷 >> Android >> 多字文本android:ellipsize不正常工作的解决方法
  详细解决方案

多字文本android:ellipsize不正常工作的解决方法

热度:60   发布时间:2016-05-01 14:41:23.0
多字文本android:ellipsize不正常工作的解决办法

参考:
1.Ellipsize not working for textView inside custom listView

2.Ellipsize functionality in TextView does not put ellipsis for single line multi-word text

当TextView中的文本内容长度超过了TextView的宽度,如果是单行,超出部分将被截断,此时我们都会使用android:ellipsize,该属性可以用了来省略显示文本,但很可能不像我们原以为的那样工作。

?

比如,我们配置了这样一个标准的TextView

 <TextView         android:text="如果是一段很长的文本,内容长度超出了这个View的宽度,我们想要一行显示,且超出部分在末端以省略号'……'表示,但实际上没有这样工作,而是文本超出的多余的部分被截断了。如:文本内容为'My name is Eric, i am a good boy.'被截断成了'My name is Eric'而不是'My name is Eric.....' "         android:layout_width="fill_parent"         android:layout_height="wrap_content"        android:maxLines="1"        android:ellipsize="end" />

?

可以设置singleLine="true"解决问题,然而这个方法已经被废弃了不推荐使用,我们可以简单实现和singleLine相同的效果(红字部分)。正常工作的解决办法如下

?

android:ellipsize="end" android:lines="1"android:scrollHorizontally="true"

?

  相关解决方案