How to do circular scrolling on ViewPager?

后端 未结 10 1490
别那么骄傲
别那么骄傲 2020-11-28 04:31

I would like to set my ViewPager to do circular scrolling. I want the first page to be able to scroll to page 2 AND the last page. And I would like my last page to scroll to

10条回答
  •  有刺的猬
    2020-11-28 05:14

    Try this

    ((ViewPager) container)
                    .setOnPageChangeListener(new OnPageChangeListener() {
                        @Override
                        public void onPageSelected(int position) {
                            Log.i("TAG", "pos::" + position);
    
                        }
                        @Override
                        public void onPageScrollStateChanged(int state) {
                            // TODO Auto-generated method stub                            
                               int currentPage = pager.getCurrentItem();
                               Log.i("TAG", "currentPage::" + currentPage);
                               Log.i("TAG", "currentState::" + currentState);
                               Log.i("TAG", "previousState::" + previousState);
                               if (currentPage == 4 || currentPage == 0) {
                                previousState = currentState;
                                currentState = state;
                                if (previousState == 1 && currentState == 0) {
                                 pager.setCurrentItem(currentPage == 0 ? 4 : 0);
                                }
                               }
    
                        }
    
                        @Override
                        public void onPageScrolled(int arg0, float arg1,
                                int arg2) {
                            // TODO Auto-generated method stub
    
                        }
                    });
    
            return
    

    This should be placed inside

     @Override
        public Object instantiateItem(final View container, int position) {}
    

提交回复
热议问题