说到跑马灯效果,最先想到的应该就是使用TextView自带的android:ellipsize="marquee"属性来实现。但是这个属性在简单易用的同时也有很大的局限性,例如由于ellipsize属性是只有当文字超出控件长度时才会生效,所以当文字较短时就无法产生跑马灯的效果。再比如不能指定滚动方向、不能指定滚动速度等。在开发中常常会遇到复杂的跑马灯需求用自带的属性无法实现的情况,之前接到一个需求要做文字的跑马灯,可是文字一共就只有4个字...那么就无法使用TextView自带的属性实现了,于是就自己实现了一个高度定制化的跑马灯View,可以实现包括图片跑马灯效果、TextView文字不超过宽度时的跑马灯效果等任意View的跑马灯效果,并且可以指定滚动的方向和速度。
主要实现方式是继承HorizontalScrollView并实现Runnable接口,通过scrollTo方法刷新界面实现。以下是MarqueeView源码:
https://github.com/TangfeiJi/MarQueeView
https://github.com/TangfeiJi/MarQueeView
最后
以上就是悦耳白羊最近收集整理的关于Android实现任意View的跑马灯效果的全部内容,更多相关Android实现任意View内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复