安卓开发怎样监听viewpager的滑动变化

 我来答
匿名用户
2016-05-23
展开全部
android ViewPager滑动事件讲解

今天在做项目的时候,由于要处理viewPager页面滑动的事件,所以对其进行了一个小小的研究:

首先ViewPager在处理滑动事件的时候要用到OnPageChangeListener

OnPageChangeListener这个接口需要实现三个方法:(onPageScrollStateChanged,onPageScrolled ,onPageSelected)

onPageScrollStateChanged(int arg0) ,此方法是在状态改变的时候调用,其中arg0这个参数

有三种状态(0,1,2)。arg0 ==1的时辰默示正在滑动,arg0==2的时辰默示滑动完毕了,arg0==0的时辰默示什么都没做。

当页面开始滑动的时候,三种状态的变化顺序为(1,2,0),演示如下:

当viewPager状态改变时候的代码块:

<IMG style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; BORDER-TOP: medium none; BORDER-RIGHT: medium none" alt=http://img.my.csdn.net/uploads/201304/16/1366083605_9502.png src="http://img.my.csdn.net/uploads/201304/16/1366083605_9502.png">

打印结果:

<IMG style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; BORDER-TOP: medium none; BORDER-RIGHT: medium none" alt=http://img.my.csdn.net/uploads/201304/16/1366083785_1088.png src="http://img.my.csdn.net/uploads/201304/16/1366083785_1088.png">

onPageScrolled(int arg0,float arg1,int arg2) ,当页面在滑动的时候会调用此方法,在滑动被停止之前,此方法回一直得到

调用。其中三个参数的含义分别为:

arg0 :当前页面,及你点击滑动的页面

arg1:当前页面偏移的百分比

arg2:当前页面偏移的像素位置

(参见官网:http://docs.eoeandroid.com/reference/android/support/v4/view /ViewPager.OnPageChangeListener.html#onPageScrolled(int, float, int))

演示如下:

页面滚动时侯代码:

<IMG style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; BORDER-TOP: medium none; BORDER-RIGHT: medium none" alt=http://img.my.csdn.net/uploads/201304/16/1366084226_5095.png src="http://img.my.csdn.net/uploads/201304/16/1366084226_5095.png">

日志打印:

<IMG style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; BORDER-TOP: medium none; BORDER-RIGHT: medium none" alt=http://img.my.csdn.net/uploads/201304/16/1366084267_6134.png src="http://img.my.csdn.net/uploads/201304/16/1366084267_6134.png">

onPageSelected(int arg0) : 此方法是页面跳转完后得到调用,arg0是你当前选中的页面的Position(位置编号)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式