Android Banner轮播图无限循环与手动滑动功能实现
Android 的 Banner 轮播图,挺常见的 UI 控件了,是首页广告或者内容推荐。要搞成无限循环播放,还能手动滑动,看着顺畅、用着舒服,这篇教程讲得还蛮细的。
数据准备这块就别掉以轻心,图片 URL最好集中放到ArrayList
里,或者搞个带图片和信息的对象,结构清晰些。用自定义ViewGroup
装多个ImageView
,数量对得上数据源,做些初始化加载,前后两张图先安排上。
核心玩法在于滑动逻辑:用Timer
定时滑动,让轮播自然衔接。图滑到头,偷偷把第一张图搬到,看着就像是无限循环。加上ObjectAnimator
或者插值器,滑动动画就更丝滑了。
手动滑动也重要,用户体验就靠这个了。重写onTouchEvent()
,监测ACTION_DOWN
、ACTION_MOVE
,看滑动距离是不是超过了“我要滑”的阈值,再来一波TranslateAnimation
,滑动就有手感了。
优化这块,别偷懒。图片加载建议直接上Glide
或者Picasso
,速度快、内存也好控。定时器记得在不需要时取消,不然容易内存泄漏。再就是考虑用ViewPager2
配合PagerAdapter
,大数据量也扛得住。
如果你正好在搞 Android 首页,想做个不卡顿又能自动+手动滑的 Banner,这篇教程还挺值得一看的。延伸阅读里也有不少干货,像ViewPager 无限轮播这种文章,也挺有的哦~
2.86KB
文件大小:
评论区