RecyclerView 记录恢复滚动位置
2017-05-08 16:19
1546 查看
新出的RecyclerView网上的资料比较少,根据ListView以及参考了一下官方API得出。
定义两个成员变量:
记录位置,
恢复位置:
这样更精确
定义两个成员变量:
private int lastPosition = 0; private int lastOffset = 0;
记录位置,
OnScrollListener,
onScrollStateChanged()里添加:
View topView = mLayoutManager.getChildAt(0);//获取可视的第一个view
lastOffset = topView.getTop();//获取与该view的顶部的偏移量
lastPosition = mLayoutManager.getPosition(topView);得到该View的数组位置
恢复位置:
mLayoutManager.scrollToPosition(lastPosition);
这样更精确
((LinearLayoutManager)mLayoutManager).scrollToPositionWithOffset(lastPosition, lastOffset);
相关文章推荐
- Android Studio第三十一期 - 记录RecyclerView滚动位置并恢复
- Android RecyclerView 记录恢复滚动位置
- 记录RecyclerView滚动位置并恢复
- Android 记录和恢复ListView滚动的位置的三种方法
- Android 记录和恢复ListView滚动的位置的三种方法
- Android--记录和恢复listView滚动位置的3种方法
- android记录和恢复ListView滚动的位置
- 记录和恢复listView滚动位置的2种方法
- android 记录和恢复ListView滚动的位置 四种方法
- Android 记录和恢复ListView滚动的位置的三种方法
- 记录和恢复 ListView 滚动位置
- RecyclerView里嵌套ViewPager,滚动RecyclerView时,记住之前ViewPager滑动后的位置
- Android--记录和恢复listView滚动位置的3种方法 (20
- android学习摘记——记录和恢复ListView滚动的位置
- Android 记录和恢复ListView滚动的位置的方法
- Android 记录和恢复ListView滚动的位置的三种方法
- 记录和恢复listView的滚动位置
- Android 记录和恢复ListView滚动的位置的三种方法
- Android 记录和恢复ListView滚动的位置的三种方法(转)
- Android 记录和恢复ListView滚动的位置的三种方法