mviewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() { @Override public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { Log.d("測試代碼", "onPageScrolled滑動中" + position); } @Override public void onPageSelected(int position) { Log.d("測試代碼", "onPageSelected選中了" + position); } @Override public void onPageScrollStateChanged(int state) { if (state == ViewPager.SCROLL_STATE_DRAGGING) { //正在滑動 pager處於正在拖拽中 Log.d("測試代碼", "onPageScrollStateChanged=======正在滑動" + "SCROLL_STATE_DRAGGING"); } else if (state == ViewPager.SCROLL_STATE_SETTLING) { //pager正在自動沉降,至關於鬆手後,pager恢復到一個完整pager的過程 Log.d("測試代碼", "onPageScrollStateChanged=======自動沉降" + "SCROLL_STATE_SETTLING"); } else if (state == ViewPager.SCROLL_STATE_IDLE) { //空閒狀態 pager處於空閒狀態 Log.d("測試代碼", "onPageScrollStateChanged=======空閒狀態" + "SCROLL_STATE_IDLE"); } } });
Log日誌打印以下java
09-14 16:02:18.577 13543-13543/com.football.app D/測試代碼﹕ onPageScrollStateChanged=======正在滑動SCROLL_STATE_DRAGGING
09-14 16:02:18.577 13543-13543/com.football.app D/測試代碼﹕ onPageScrolled滑動中0
09-14 16:02:18.591 13543-13543/com.football.app D/測試代碼﹕ onPageScrolled滑動中0
09-14 16:02:18.607 13543-13543/com.football.app D/測試代碼﹕ onPageScrolled滑動中0
09-14 16:02:18.615 13543-13543/com.football.app D/測試代碼﹕ onPageScrollStateChanged=======自動沉降SCROLL_STATE_SETTLING
09-14 16:02:18.615 13543-13543/com.football.app D/測試代碼﹕ onPageSelected1
09-14 16:02:18.624 13543-13543/com.football.app D/測試代碼﹕ onPageScrolled滑動中0
09-14 16:02:18.641 13543-13543/com.football.app D/測試代碼﹕ onPageScrolled滑動中0
09-14 16:02:18.658 13543-13543/com.football.app D/測試代碼﹕ onPageScrolled滑動中0
09-14 16:02:18.675 13543-13543/com.football.app D/測試代碼﹕ onPageScrolled滑動中0
09-14 16:02:18.691 13543-13543/com.football.app D/測試代碼﹕ onPageScrolled滑動中0
09-14 16:02:18.709 13543-13543/com.football.app D/測試代碼﹕ onPageScrolled滑動中0
09-14 16:02:18.726 13543-13543/com.football.app D/測試代碼﹕ onPageScrolled滑動中0
09-14 16:02:18.743 13543-13543/com.football.app D/測試代碼﹕ onPageScrolled滑動中0
09-14 16:02:18.760 13543-13543/com.football.app D/測試代碼﹕ onPageScrolled滑動中0
09-14 16:02:18.777 13543-13543/com.football.app D/測試代碼﹕ onPageScrolled滑動中0
09-14 16:02:18.794 13543-13543/com.football.app D/測試代碼﹕ onPageScrolled滑動中0
09-14 16:02:18.811 13543-13543/com.football.app D/測試代碼﹕ onPageScrolled滑動中0
09-14 16:02:18.828 13543-13543/com.football.app D/測試代碼﹕ onPageScrolled滑動中0
09-14 16:02:18.845 13543-13543/com.football.app D/測試代碼﹕ onPageScrolled滑動中1
09-14 16:02:18.946 13543-13543/com.football.app D/測試代碼﹕ onPageScrollStateChanged=======空閒狀態SCROLL_STATE_IDLEapp
經過日誌 得出來 ViewPager滑動的時候 回調的方法順序爲 ide
onPageScrollStateChanged()// state == ViewPager.SCROLL_STATE_DRAGGING 正在滑動狀態測試
onPageScrolled() //滑動狀態日誌
onPageScrollStateChanged() // state ==SCROLL_STATE_SETTLING 自動沉降狀態code
onPageSelected() // 選中狀態it
onPageScrolled() //滑動狀態io
onPageScrollStateChanged() //state==SCROLL_STATE_IDLE 空閒狀態 滑動結束class