qq_31244409
ys-ce
采纳率50%
2016-02-28 14:08

关于viewpager实现左右滑动到问题

2
已采纳

在最后一张图向右继续滑动时,跳转到第一张图片

 picture_viewpager.setAdapter(new PagerAdapter() {
            @Override
            public int getCount() {
                return pictureList.size();
            }

            @Override
            public boolean isViewFromObject(View view, Object object) {
                return view == object;
            }

            @Override
            public Object instantiateItem(ViewGroup container, int position) {
                container.addView(pictureList.get(position));
                return pictureList.get(position);
            }

            @Override
            public void destroyItem(ViewGroup container, int position, Object object) {
                container.removeView((View) object);
            }
        });


        picture_viewpager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
            @Override
            public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
                if (position==5&&positionOffset==0)
                {
                    picture_viewpager.setCurrentItem(1,false);
                }
            }

            @Override
            public void onPageSelected(int position) {

            }

            @Override
            public void onPageScrollStateChanged(int state) {

            }
        });

程序运行时,每次都会停止工作,是不是跟viewpager只能缓存3个页面有关,还是其他什么原因,该怎么解决

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

2条回答

  • luochoudan 丑旦 5年前

    首先,肯定不是你说的原因。setOffscreenPageLimit()可是设置缓存的页面个数。建议把日志贴出来呃,比代码有效果多了。

    点赞 评论 复制链接分享
  • namelin2 namelin2 5年前

    判断条件有问题,另外日志也要贴出来,估计是数组越界异常

    点赞 评论 复制链接分享