ViewPager的滑动回调分析
/** * 当 ViewPager的当前页面向左滑动时(手势是 向左 滑动屏幕):此时positionOffset不断变大(从0变化到*1),到达1时,忽然变为0,此时恰好切换了一个新页面 * 当ViewPager的当前页面向右滑动时 (手势是 向右 滑动屏幕):此时positionOffset不断变小(从1向0变** *化),到达0时,恰好切换到以前的旧页面 * **/ @Override public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { } @Override public void onPageSelected(int position) { } // state 的值在 手不触碰 屏幕时,state的值是0,手指滑动时,state的值是1,当手指抬起时,state的值是2 @Override public void onPageScrollStateChanged(int state) { }
- 让ViewPager循环起来
常见是头部导航栏,循环滑动ide
- ViewPager设置两个Pager的Margin
viewPager.setPagerMargin(10);
- PagerAdapter 适配器
须要重写下列方法:动画
// 这四个方法必须重写,去掉父类的方法 instantiateItem(ViewGroup, int) destroyItem(ViewGroup, int, Object) getCount() isViewFromObject(View, Object)
- PagerTransformer 用来实现翻页动画