ViewPager在处理滑动事件的时候要用到OnPageChangeListener
OnPageChangeListener这个接口需要实现三个方法:(onPageScrollStateChanged,onPageScrolled ,onPageSelected)
onPageScrollStateChanged(int arg0) ,此方法是在状态改变的时候调用,其中arg0这个参数
有三种状态(0,1,2)。arg0 ==1的时候表示正在滑动,arg0==2的时候表示滑动完毕了,arg0==0的时候表示什么都没做。
当页面开始滑动的时候,三种状态的变化顺序为(1,2,0),演示如下:
当viewPager状态改变时候的代码块:
@Override
public void onPageScrollStateChanged(int arg0) {
// TODO Auto-generated method stub
if (arg0 == 0) {
Log.i("tag", "arg=0 什么都不做");
} else if (arg0 == 1) {
Log.i("tag", "arg0=1 正在滑动");
} else if (arg0 == 2) {
Log.i("tag", "arg0=2 滑动完毕");
}
}
onPageScrolled(int arg0,float arg1,int arg2) ,当页面在滑动的时候会调用此方法,在滑动被停止之前,此方法回一直得到
调用。其中三个参数的含义分别为:
arg0 :当前页面,及你点击滑动的页面
arg1:当前页面偏移的百分比
arg2:当前页面偏移的像素位置
@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {
// TODO Auto-generated method stub
Log.i("tag", "onPageScrolled arg0 = " + arg0 + " arg1 = " + arg1
+ " arg2 = " + arg2);
}