ViewPager自动滚动

ViewPage实现自动滚动并没有通过ScheduledExcutorService或者Timer定期执行某个任务实现,而是简单的通过handler发送消息去完成一次滚动,在完成一次滚动后发送另外一个delay的滚动消息,如此循环实现。

ViewPager滑动速度的设置是通过反射的方式重新设置ViewPager的Scroller,改变Scroller的startScroll的间隔时间完成的。调用setScrollDuration(double)即可。

如何使用呢?

首先,引入公共库。

Android Auto Scroll ViewPager 作为你项目的library。

然后,调用。分两步。

第一步,利用自动滚动的AutoScrollViewPager来代替一般的ViewPager。

第二步,启动ViewPager自动滚动。

startAutoScroll()启动自动滚动

stopAutoScroll()停止自动滚动

另外,我们可以根据自己的需求进行一系列相关的设置。

setInterval(long)设置自动滚动的间隔时间,单位为毫秒

setDirection(int)设置自动滚动的方向,默认向右

setCycle(boolean)是否自动循环轮播,默认为ture

setScrollDurationFactor(double)设置VIewPager滑动动画间隔时间的倍率,达到减慢动画或者改变动画速度的效果

setStopScrollWhenTouch(boolean)当手指碰到ViewPager时是否停止自动滚动,默认为true。

setSlideBorderMote(int)滑动到第一个或者最后一个Item的处理方式,支持没有任何操作、轮播以及传递到父View三种模式。

setBorderAnimation(boolean)设置循环滚动时滑动到边缘滚动到下一个是否需要动画,默认为true。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容