setEllipsize(TruncateAt where)
setEllipsize(TruncateAt where)
void android.widget.TextView.setEllipsize(TruncateAt where)
public void setEllipsize (TextUtils.TruncateAt where)
当文本长于视图时,可用ellipsize()方法进行设置以显示完整的文本,而不是在中间截断原来的文本。您可能还想要用setSingleLine()或setHorizontallyScrolling(bool)来限制为单行文本。可以使用null关闭ellipsize。如果setMaxLines(int)被用来设置两行或两行以上的文本,只有END和MARQUEE被ellipsize方法支持(其他ellipsiz类型将不会做任何事情)。
相关xml属性:android:ellipsize
如果设置了,则必须为下列的值之一:
constant | value |
none | 0 |
start | 1 |
middle | 2 |
end | 3 |
marquee | 4 |
与之相关的方法TextUtils.TruncateAt.flags的参数flags如下
public static final TextUtils.TruncateAt END
public static final TextUtils.TruncateAt MARQUEE
public static final TextUtils.TruncateAt MIDDLE
public static final TextUtils.TruncateAt START
测试后发现参数flags作用如下:
当文本长度超过View时,END表明从文本开始截取view最大可以显示的宽度,不可见的部分将无法看到,也无法滑动span去查看。MARQUEE设置走马灯效果(常常配合setMarqueeRepeatLimit()使用),不用多说。START表示:取得文本的全部长度,不可见部分(即超出view部分)可以用手滑动span进行查看.与MIDDLE类似。
下面是一个例子:
tv.setEllipsize(TextUtils.TruncateAt.MARQUEE);
tv.setMarqueeRepeatLimit(4);
设置当文本过长时(超过tv文本域),用跑马灯的方式显示文本,并设置重复次数为4次。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
2019-02-22 苏曼
2019-02-22 android 接受系统锁屏广播,及高版本发送广播