android中的ellipsize
2014-12-27 09:14
295 查看
textview中有个内容过长加省略号的属性,即ellipsize
用法如下:
在xml中
最好加一个约束android:singleline = "true"
当然也可以用代码语句
最好再加一个约束tv.setSingleLine(true);
不仅对于textview有此属性,对于editext也有,不过它不支持marquee
对于使用marquee即滚动显示方式的,需要当前textview获得焦点才会滚动。所以有时可能因为实际需要,textview未获得焦点或者需要多个textview都同时滚动显示时,可以采用以下办法:
因为判断textview是否处于focused状态是通过它本身isFocused()方法,这样只要此方法返回为true时,即认为处于focused的状态,就可以滚动啦。
所以可以通过继承TextView类,并override isFocused()方法来控制是否滚动咯。
用法如下:
在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);
不仅对于textview有此属性,对于editext也有,不过它不支持marquee
对于使用marquee即滚动显示方式的,需要当前textview获得焦点才会滚动。所以有时可能因为实际需要,textview未获得焦点或者需要多个textview都同时滚动显示时,可以采用以下办法:
因为判断textview是否处于focused状态是通过它本身isFocused()方法,这样只要此方法返回为true时,即认为处于focused的状态,就可以滚动啦。
所以可以通过继承TextView类,并override isFocused()方法来控制是否滚动咯。
相关文章推荐
- android中的ellipsize
- android中的ellipsize
- Android的ImageButton、visibility、ellipsize、scaleType属性
- android:ellipsize
- android中给TextView设置属性ellipsize
- android中的ellipsize
- android中的ellipsize
- Android 中的ellipsize
- android ellipsize 解决textview自动换行
- android中的ellipsize
- (转)android中的ellipsize
- android中的ellipsize
- android ellipsize的使用
- android:ellipsize
- Android中的ellipsize
- android中的ellipsize
- android中的ellipsize
- android中的ellipsize
- TextView常用属性android:ellipsize
- Android ellipsize的小问题