RecyclerView嵌套横向滑动的RecyclerView保存滑动状态

layoutManager.onSaveInstanceState()
layoutManager.onRestoreInstanceState()
RecyclerView嵌套横向滑动的RecyclerView保存滑动状态
第一层RecyclerView 的 adapter中
定义一个map集合 记录LayoutManager状态,Map
adapter中重写onViewRecycled()方法 view被滑动消失后调用:
RecyclerView.LayoutManager manager = mRecycleview.getLayoutManager();
Parcelable parcelable = manager.onSaveInstanceState();
if (parcelable != null) {
map.put(holder.getAdapterPosition(), parcelable);
}
重写 addAll()方法,刷新后清楚map存放的信息。
在onBindViewHolder中获取存放的信息并恢复状态
Parcelable parcelable = map.get(holder.getAdapterPosition());
layoutManager.onRestoreInstanceState(parcelable);

你可能感兴趣的:(RecyclerView嵌套横向滑动的RecyclerView保存滑动状态)