您的位置:首页 > 移动开发 > Android开发

TextView文字跑马灯效果

2017-06-25 13:24 253 查看
项目中要用到跑马灯效果,如下:



虽说看起来挺简单,但还是踩了好几个坑,故此记录一下。

刚开始的时候以为设置以下两个参数就好:

android:lines="1"
android:ellipsize="marquee"


“ellipsize”参数代表text view文字设置一行显示的时候文字显示不下将以何种方式显示,总共有5个参数:

start:表示将文字开头省略,用“…”代替

middle:表示将文字中间省略,用“…”代替

end:表示将文字末尾省略,用“…”代替

marquee:表示当文字一行展示不下时,以跑马灯滚动效果展示

none:即默认,没有任何效果

但是设置marquee之后发现并没有效果,后来网上查阅资料,又添加了以下参数:

android:focusable="true"
android:focusableInTouchMode="true"
android:marqueeRepeatLimit="marquee_forever"
注:以上代码少一行都会导致没有效果


但当我使用的时候还是不行,于是我又把网上的代码直接粘过来,好使了。。。我只好一行一行检查代码,看哪里跟人家不一样,后来发现只有一处不同。

在限制文字行数的时候我用的是:

android:lines="1"


人家用的是:

android:singleLine="true"


我之后也改为singleLine,效果果然有了。

在用singleLine的时候,studio会有方法过时提示:



官方推荐使用maxLines代替,但是当我使用maxLines的时候,效果又没了,只好换回来,有知道的请解答一下,谢谢!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android textview