viewpager在最后一页滑动之后跳转到主页面.

来源:互联网 发布:作图软件cs5 编辑:程序博客网 时间:2024/05/07 07:35

viewpager在最后一页滑动之后跳转到主页面

添加切换监听器

mViewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {            //判断是不是要跳转下页一个标记位            private boolean flag;            @Override            public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {            }            @Override            public void onPageSelected(int position) {            }            @Override            public void onPageScrollStateChanged(int state) {            }        });````<div class="se-preview-section-delimiter"></div>### 在onPageScrollStateChanged方法中判断是不是最后一个,同是是不是拖放状态<div class="se-preview-section-delimiter"></div>```android            @Override            public void onPageScrollStateChanged(int state) {                Log.d("vivi", "onPageScrollStateChanged: " + state);                switch(state) {                    case ViewPager.SCROLL_STATE_DRAGGING:                        //拖的时候才进入下一页                        flag = false;                        Log.d("vivi", "SCROLL_STATE_DRAGGING: " + ViewPager.SCROLL_STATE_DRAGGING);                        break;                    case ViewPager.SCROLL_STATE_SETTLING:                        flag = true;                        Log.d("vivi", "SCROLL_STATE_SETTLING: " + ViewPager.SCROLL_STATE_SETTLING);                        break;                    case ViewPager.SCROLL_STATE_IDLE:                        Log.d("vivi", "SCROLL_STATE_IDLE: " + ViewPager.SCROLL_STATE_IDLE+"  mViewPager.getCurrentItem() "+mViewPager.getCurrentItem());                        /**                         * 判断是不是最后一页,同是是不是拖的状态                         */                        if(mViewPager.getCurrentItem() == mWelcomeViewpagerAdapter.getCount() - 1 && !flag) {                            Intent localIntent = new Intent();                            localIntent.setClass(WelcomeActivity.this, MainActivity.class);                            startActivity(localIntent);                            // overridePendingTransition(0, 0);                            finish();                        }                        flag = true;                        break;                }

源码
https://github.com/ln0491/ViewPagerDemo

1 0