温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

TextView中ellipsize属性

发布时间:2020-06-19 09:21:02 来源:网络 阅读:464 作者:Volkgoods 栏目:开发技术

TextView中可以设置一个ellipsize属性,作用是当文字长度超过textview宽度时的显示方式:

例如,"123456789"显示, 只是举例,以实际显示为准:


android:ellipsize=”start”—–省略号显示在开头 "...789"
android:ellipsize=”end”——省略号显示在结尾  "1234..."
android:ellipsize=”middle”—-省略号显示在中间 "12...789"
android:ellipsize=”marquee”–以横向滚动方式显示(需获得当前焦点时)

 

对于使用marquee即滚动显示方式的,需要当前textview获得焦点才会滚动。所以有时可能因为实际需要,textview未获得焦点或者需要多个textview都同时滚动显示时,可以采用以下办法:

因为判断textview是否处于focused状态是通过它本身isFocused()方法,这样只要此方法返回为true时,即认为处于focused的状态,就可以滚动啦。

所以可以通过继承TextView类,并override isFocused()方法来控制是否滚动咯。

 

另外如果是组合View,外层layout需要加入以下属性来保证focus状态的传递:addStatesFromChildren="true"


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI