android TextView 跑马灯效果

snopy110 2016-10-11 09:59:27
【用跑马灯的原因】:
服务器返回的字符串太长,用...是可以表示,但无法看出来完整的语意。
比如:我获取的是行情服务器名称,XXX省XXX市补档/行情中国电信、中国网通XXX线路_XX
用...方式不是很好,故采用跑马灯的方式
当然采用android:ellipsize="start",后面显示完整,前面用...表示也可以。
这里主要收纳下跑马灯效果的重点。

【项目过程中小结】:
直接用原生的TextView设置跑马灯属性没有效果,需要自己写个类继承TextView,重点是复写isFocused方法(return true即可)。

【设置的相关属性】:
android:lines="1"//冗余代码,同singleLine同样的意思
android:maxEms="9"//最大显示九个字符(根据自己UI设置)
android:ellipsize="marquee"//跑马灯模式
android:marqueeRepeatLimit="3"//控制循环3次,可以换成“marquee_forever”一直循环
android:singleLine="true"//单行才能跑马灯
android:focusable="true"//获得焦点才能跑马灯
android:focusableInTouchMode="true"//touch能获得焦点

【复写的主要方法】:
@Override
public boolean isFocused() {
return true;//重点!!!!!!
}
...全文
263 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
疯狂的兔子ccc 2016-11-08
  • 打赏
  • 举报
回复
引用 3 楼 snopy110 的回复:
[quote=引用 1 楼 qq_23169015 的回复:] 我之前像你这样做过,但是这个textVIew 会和同一页面的Edit Text抢焦点
那后来解决了吗?[/quote] 后来和客户商量了一下,这个效果不要了
snopy110 2016-11-08
  • 打赏
  • 举报
回复
引用 1 楼 qq_23169015 的回复:
我之前像你这样做过,但是这个textVIew 会和同一页面的Edit Text抢焦点
那后来解决了吗?
ink_s 2016-10-11
  • 打赏
  • 举报
回复
疯狂的兔子ccc 2016-10-11
  • 打赏
  • 举报
回复
我之前像你这样做过,但是这个textVIew 会和同一页面的Edit Text抢焦点

80,349

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧