2019独角兽企业重金招聘Python工程师标准>>>
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循环起来
常见是头部导航栏,循环滑动
- ViewPager设置两个Pager的Margin
viewPager.setPagerMargin(10);
- PagerAdapter 适配器
需要重写下列方法:
// 这四个方法必须重写,去掉父类的方法
instantiateItem(ViewGroup, int)
destroyItem(ViewGroup, int, Object)
getCount()
isViewFromObject(View, Object)
- PagerTransformer 用来实现翻页动画