OnPageChangeListener这个接口需要实现三个方法:(onPageScrollStateChanged,onPageScrolled ,onPageSelected)
onPageScrollStateChanged(int arg0)
此方法是在状态改变的时候调用,其中arg0这个参数有三种状态(0,1,2)。
arg0 ==1的时辰默示正在滑动(手势滑动,空闲中),arg0==2的时辰默示滑动完毕了(界面切换中),arg0==0的时辰默示什么都没做(滑动结束,即切换完毕或者加载完毕)。
(如果界面没有切换,那么arg0!=2,即case:arg0==2中的代码块不会执行)
当页面开始滑动的时候,三种状态的变化顺序为(1,2,0),演示如下:
当viewPager状态改变时候的代码块:
打印结果:
onPageScrolled(int arg0,float arg1,int arg2)
当页面在滑动的时候会调用此方法,在滑动被停止之前,此方法回一直得到调用。其中三个参数的含义分别为:
arg0:当前页面,即你点击滑动的页面
arg1:当前页面偏移的百分比
arg2:当前页面偏移的像素位置
演示如下:
页面滚动时侯代码:
日志打印:
onPageSelected(int arg0)
此方法是页面跳转完后得到调用,arg0是你当前选中的页面的Position(位置编号)。