Android-->打造无限循环的RecyclerView

这里写图片描述

难点分析:
1:如何在有限的数据里面, 实现无限个Item呢?
2:如何让滑动的时候, 一个一个的滑动, 而不会一下子滚动多个呢?
3:如何在第一次显示的时候, 就可以左滑呢?


针对以上问题, 接下来一一解决:
问题1:
只需要在RecyclerView.Adapter的方法中:

@Override
public int getItemCount() {
    return Integer.MAX_VALUE;
}

可能距离真正无限个Item还是有差距, 但是达到效果还是可以的;

问题2:
其实谷歌已经帮我们实现了.

new PagerSnapHelper().attachToRecyclerView(this);

这样之后, 就可以一个一个的滚动Item了, 一行代码就实现了类似ViewPager的效果,
你还有什么理由使用ViewPager?

但是有一个缺点, 就是没有像ViewPager那样的OnPageChangeListener事件监听.
不过, 完全可以自己动手, 添加这个事件.

实现起来也是非常简单. 项目中有源码.

问题3:

@Override
public void setAdapter(Adapter adapter) {
    super.setAdapter(adapter);
    scrollToPosition(getAdapter().getItemRawCount() * 10000);//开始时的偏移量
}

只需要让开始的时候, 产生一定的位置偏移就行了.

其实思路很简单, 大家多动动脑, 动动手. 完全无压力的!
开源地址: https://github.com/angcyo/LoopRecyclerView


至此: 文章就结束了,如有疑问: QQ群:274306954 欢迎您的加入.

你可能感兴趣的:(Android-->打造无限循环的RecyclerView)