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 用來實現翻頁動畫