TextView实现滚动播放

首先,对于TextView来说,只有在内容超出能够显示的范围,才会需要滚动播放。


所以,我们要做的第一步就是设置范围:

android:singleLine="true"
设置单行显示,如果不设置 singleLine或者说设置 singleLine="false",TextView中的内容在满一行后就会自动换行。


接下来自然就会想到,我们既然设置了单行显示,那么超出的部分会怎么样呢?

那就要通过 android:ellipsize 这个属性来实现了:

android:ellipsize="start" -- 省略号在开头

       

android:ellipsize="middle" -- 省略号在中间

       

android:ellipsize="end"  -- 省略号在结尾

       

android:ellipsize="marquee"  -- 跑马灯显示

或者在程序中可通过setEillpsize显式设置。(注意:EditText不支持marquee这种模式

如果设置了 marquee模式(跑马灯显式),就要记得设置 android:marqueeRepeatLimit 属性,也就是设置重复滚动的次数,当设置为marquee_forever时表示无限次。


最最重要的就是 android:focusable 属性(能否获得焦点),记得要设置为true;focusableInTouchMode是滑动时能否获得焦点,也要设置为true。








你可能感兴趣的:(Android小常识)