Textview中若文字过长,默认会换行显示,这就可能导致不希望的结果,使用ellipsize属性解决这个问题,将多余的文字以省略号显示
写在xml中
android:ellipsize = "end" 省略号在结尾
android:ellipsize = "start" 省略号在开头
android:ellipsize = "middle" 省略号在中间
android:ellipsize = "marquee" 跑马灯
最后加一个约束android:singleline = "true" 单行显示
写在代码中有一样的效果:
tv.setEllipsize(TextUtils.TruncateAt.valueOf("END"));
tv.setEllipsize(TextUtils.TruncateAt.valueOf("START"));
tv.setEllipsize(TextUtils.TruncateAt.valueOf("MIDDLE"));
tv.setEllipsize(TextUtils.TruncateAt.valueOf("MARQUEE"));
再加一个约束tv.setSingleLine(true);
对于editext也有类似属性,但它不支持marquee
本文介绍如何在 Android 的 TextView 中处理文字过长的问题,通过设置 ellipsize 属性实现文字省略显示,并介绍了不同省略方式的效果及代码实现。
1262

被折叠的 条评论
为什么被折叠?



