Android 自己设置 View 实现跑马灯效果

作者 : 开心源码 本文共740个字,预计阅读时间需要2分钟 发布时间: 2022-05-12 共214人阅读

为什么要实现该效果?

刚开始是在公司项目中 有个点击飘心的效果,在飘心的同时,文字还能一致滚动【想象.png】。

在 Github 找了几个跑马灯的库,本以为都能实现,但是跑在项目上总会出现每次点击飘心动画后,滚动的文字都会重新开始滚动,这不是产品要的效果。(回到家后自己写了个 demo 测试 Github 上几个跑马灯效果很好的库都没问题,真真是打脸了)

先来推荐三个 GitHub 上实现跑马灯效果很不错的库

  • sunfusheng/MarqueeView 这是扩展了 ViewFlipper实现的。实现的效果如下:

    MarqueeView.gif

  • gongwen/MarqueeViewLibrary 这也是扩展了ViewFlipper控件实现的,实现的效果如下:

    screen_shot1.gif

  • 385841539/MarqueeView 这是继承了View 去实现,作者说了实现该库的起因使用TextView 出现了各种坑啊 , 尤其是在页面中同时存在EditText 的时候,效果图如下:

    跑马灯.gif

膜拜以上几位大神,下面开始贴我实现的效果,一点都不丑,哈哈哈。

  • dongxi346/MarqueeLib 实现的效果:
    demo.gif

简单详情我实现思路

也是通过自己设置View 实现,我实现的只有两种滚动方式,从左往右滚动,从右往左滚动

  • 从左往右滚动( x 轴是逐步减增大 )
    这个重点就在滚动的长度,我是利使用View的长度 + 文本的长度 做滚动的长度,当超过这个长度,从头开始绘制 View
  • 从右往左滚动( x 轴是逐步减小 )
    这个滚动长度也是View的长度 + 文本的长度 做滚动的长度,当超过这个长度,从View 的 右边1/3开始绘制 View

理清这两个思路即可以了,具体可以查看源码,欢迎加好友互相学习,微信号:weixin1105894953

说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » Android 自己设置 View 实现跑马灯效果

发表回复