1.要監聽滑動事件,能夠實現接口或者實現內部類的方式進行api
若是用接口的話,必定要將ViewPager註冊事件this
1 mViewPager.setOnPageChangeListener(this);
2.實現接口就須要實現接口中未實現的方法,PagechangeListener的接口中有三個方法spa
①onPageScrollStateChanged(int arg0) code
當頁面的滑動狀態改變時該方法會被觸發,頁面的滑動狀態有3個:「0」表示什麼都不作,「1」表示開始滑動,「2」表示結束滑動。blog
②onPageScrolled(int position, float positionOffset, int positionOffsetPixels)接口
此方法在滑動ViewPager的時候一直被調用,頁面在滑動過程當中不停觸發該方法:「position」按照api的解釋是「目前顯示在屏幕上的第一個頁面,只要positionOffset不爲0,那麼他後面的頁面一樣是可見的」事件
第一頁~第二頁it
position = 0io
positionOffset 0.0 ~ 1.0class
第二頁~第一個
position = 0
positionOffset 1.0 ~ 0.0
經過上面的結果,因爲position的值在切換第一頁和第二頁的時候沒有變化,就能夠同過position+1獲得右邊的view,經過position拿到左邊的view
position 不管是滑動仍是靜止,他表示的都是屏幕最左邊的頁面
positionOffset 移量的百分比
positionOffsetPixels 偏移量的數值
③onPageSelected(int position):
ViewPager跳轉到新頁面時觸發該方法,position表示新頁面的位置。