Android Studio第三十一期 - 记录RecyclerView滚动位置并恢复

简介:

    代码已经整理好,看下面~有一天你会用到的~不客气哈~j_0057.gif

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
//监听RecyclerView滚动状态
mRecyclerView.addOnScrollListener( new  RecyclerView.OnScrollListener() {
     @Override
     public  void  onScrollStateChanged(RecyclerView recyclerView,  int  newState) {
         super .onScrollStateChanged(recyclerView, newState);
         if (recyclerView.getLayoutManager() !=  null ) {
             getPositionAndOffset();
         }
     }
});
 
/**
  * 记录RecyclerView当前位置
  */
private  void  getPositionAndOffset() {
     LinearLayoutManager layoutManager = (LinearLayoutManager) mRecyclerView.getLayoutManager();
     //获取可视的第一个view
     View topView = layoutManager.getChildAt( 0 );
     if (topView !=  null ) {
         //获取与该view的顶部的偏移量
         lastOffset = topView.getTop();
         //得到该View的数组位置
         lastPosition = layoutManager.getPosition(topView);
     }
}
 
/**
  * 让RecyclerView滚动到指定位置
  */
private  void  scrollToPosition() {
     if (mRecyclerView.getLayoutManager() !=  null  && lastPosition >=  0 ) {
         ((LinearLayoutManager) mRecyclerView.getLayoutManager()).scrollToPositionWithOffset(lastPosition, lastOffset);
     }
}








本文转自 吴雨声 51CTO博客,原文链接:http://blog.51cto.com/liangxiao/1899155,如需转载请自行联系原作者

相关文章
|
5月前
|
Android Studio的插件生态非常丰富
Android Studio的插件生态非常丰富
420 1
Android Studio支持多种操作系统
Android Studio支持多种操作系统
300 1
如何在Android Studio中配置Flutter环境?
如何在Android Studio中配置Flutter环境?
56 4
当flutter react native 等混开框架-并且用vscode-idea等编译器无法打包apk,打包安卓不成功怎么办-直接用android studio如何打包安卓apk -重要-优雅草卓伊凡
当flutter react native 等混开框架-并且用vscode-idea等编译器无法打包apk,打包安卓不成功怎么办-直接用android studio如何打包安卓apk -重要-优雅草卓伊凡
118 36
当flutter react native 等混开框架-并且用vscode-idea等编译器无法打包apk,打包安卓不成功怎么办-直接用android studio如何打包安卓apk -重要-优雅草卓伊凡
【09】flutter首页进行了完善-采用android studio 进行真机调试开发-增加了直播间列表和短视频人物列表-增加了用户中心-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
【09】flutter首页进行了完善-采用android studio 进行真机调试开发-增加了直播间列表和短视频人物列表-增加了用户中心-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
75 4
【09】flutter首页进行了完善-采用android studio 进行真机调试开发-增加了直播间列表和短视频人物列表-增加了用户中心-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
Flutter前端开发中的调试技巧与工具使用方法,涵盖调试的重要性、基本技巧如打印日志与断点调试、常用调试工具如Android Studio/VS Code调试器和Flutter Inspector的介绍
本文深入探讨了Flutter前端开发中的调试技巧与工具使用方法,涵盖调试的重要性、基本技巧如打印日志与断点调试、常用调试工具如Android Studio/VS Code调试器和Flutter Inspector的介绍,以及具体操作步骤、常见问题解决、高级调试技巧、团队协作中的调试应用和未来发展趋势,旨在帮助开发者提高调试效率,提升应用质量。
147 8
[Android]使用RecyclerView替代ListView(三)
以下内容为原创,转载请注明: 来自天天博客:http://www.cnblogs.com/tiantianbyconan/p/4268097.html    这次来使用RecyclerView实现PinnedListView的效果,效果很常见: 开发的代码建立在上一篇([Android]使用RecyclerView替代ListView(二):http://www.cnblogs.com/tiantianbyconan/p/4242541.html)基础之上。
1073 0

热门文章

最新文章

下一篇
oss创建bucket