在TextView中,当文字长度超出TextView中显示宽度时,我们可以使用TextView中的ellipsize属性。
如:
android:ellipsize=”start”—–省略号显示在开头 "...pedia"
android:ellipsize=”end”——省略号显示在结尾 "encyc..."
android:ellipsize=”middle”—-省略号显示在中间 "en...dia"
android:ellipsize=”marquee”–以横向滚动方式显示(需获得当前焦点时)
对于marquee滚动显示方式时,我们需要使当前的TextView获得焦点才可以使其正常滚动。
那么如果当两个TextView或者当多个TextView需要滚动显示时,那么就需要这多个TextView都获得焦点,那么怎么解决这个问题呢?
答案:
在当前的activity包中新建一个java class文件,使其继承TextView类,然后复写TextView的三个构造方法,如图:
然后再复写(override) isFocused()方法。如图:
使其返回值为true。
最后再在activity布局页面将TextView标签改为这个新建的java类的标签,使多个TextView引用当前的继承了TextView类的MarqueeText。如图:
那么看看最后的运行结果吧:
两个TextView都在滚动。
结束。