发布于 

无限循环RecyclerView的完美方案

无限循环RecyclerView

背景

当前服务端直播接口数量太少 所以想到这个方法

方法

参数取余运算

getItemCount长度无限

1
2
3
4
@Override
public int getItemCount() {
return Integer.MAX_VALUE;
}

onBindViewHolder() 方法里对position参数取余运算

1
2
3
4
5
6
@Override
public void onBindViewHolder(ViewHolder holder, int position)
{
int index = position % liveList.size();
...
}
细节

liveList.size为旧getItemCount方法返回值

index为新的position与bean类get对应值