创建一个圆形的View Pager,但是当从最后一页切换到第一页时,它会闪烁

时间:2015-01-10 09:17:25

标签: android android-viewpager

首先,这不是一个重复的问题,因为我已经全面检查过,但没有发现与此有关。

现在我面临的是:我正在尝试制作一个圆形视图寻呼机。我所做的是:

  1. 使用FragmentStatePagerAdapter,因为我在View寻呼机中处理Fragments
  2. 一切工作正常但是当我从我的布局中点击上一个或下一个按钮时从最后一页切换到第一页或从第一页切换到最后一页然后查看寻呼机闪烁了一下。因为我正常在页面之间切换,所以它不正常。

    从上一页到第一页时,我已完成此viewPager.setCurrentItem(0,false);。从第一页切换到最后一页时viewPager.setCurrentItem(mList.size()-1,false);

    这是我的代码段

        nextimg.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View arg0) {
                if(viewPager.getCurrentItem()+1>=mList.size()){
                    viewPager.setCurrentItem(0,false);  
                }else{
                    viewPager.setCurrentItem(getItem(+1), true);
                }
    
            }
        });
    
        previmg.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View arg0) {
                if(viewPager.getCurrentItem()-1<0){
                    viewPager.setCurrentItem(mList.size()-1,false); 
                }else{
                    viewPager.setCurrentItem(getItem(-1), true);
    
                }
            }
        });
    

    适配器

    class MyPagerAdapter extends FragmentStatePagerAdapter {
    
        public MyPagerAdapter(FragmentManager fm,ArrayList<Model> mList) {
            super(fm);
            this.mList=mList;
    
        }
    
        @Override
        public int getCount() {
    
    
           return mList.size();
        }
    
    
        @Override
        public Fragment getItem(int position) {     
            Fragment mDetail=new DetailResultFragment(mList);
            return  mDetail; 
        }
        @Override
        public Parcelable saveState()
        {
            return null;
        }
    }
    

    任何建议,以避免这种闪烁。

0 个答案:

没有答案