RecyclerView记录其滚动位置,刷新时此条数据置顶
// 定义一个记录位置的变量
private int atPosition = 0;
// 在数据加载完成后进行操作(此方法放在合适的位置)
// 在列表数据加完完成后,执行此方法,对数据进行操作
mRecyclerView.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {@Overridepublic void onGlobalLayout() {// 点击了的父类项的位置下标int atPosition;if ("".equals(PrivateShardedPreference.getInstance(CheckOnWorkAttendanceListActivity.this).getString("pressCheckOnWorkItemPosition", ""))) {atPosition = 0;} else {atPosition = Integer.parseInt(PrivateShardedPreference.getInstance(CheckOnWorkAttendanceListActivity.this).getString("pressCheckOnWorkItemPosition", ""));}// 利用线程mRecyclerView.post(() -> {// 记录上次点击的位置,并且滚动到此位置,并且此项置顶if (atPosition != -1) {mRecyclerView.scrollToPosition(atPosition);LinearLayoutManager mLayoutManager = (LinearLayoutManager) mRecyclerView.getLayoutManager(); // 这里的 LinearLayoutManager对象只能是动态获取,不能用全局的。mLayoutManager.scrollToPositionWithOffset(atPosition, 0);}});mRecyclerView.getViewTreeObserver().removeOnGlobalLayoutListener(this);}
});
RecyclerView记录其滚动位置,刷新时此条数据置顶相关推荐
- 模拟滚动电子显示屏(自定义文本、置顶、透明度、颜色、速度、位置等)
发布了好几个版本了,现做一个精简版(非全屏)已修订BUG 历史版本 https://blog.csdn.net/uaime/article/details/114728725?spm=1001.201 ...
- 踩坑记录--mybatisplus模糊查询中文时 有数据但 like查不到
排查过程: 先去打印台查看SQL语句 接着输入英文可以查到,输入中文查不到 想到可能是编码原因 百度精准搜----发现最终原因: 原因是application.properties中数据库没有配置&a ...
- vue 记录滚动位置_vue 路由跳转记住滚动位置,返回时回到上次滚动位置
方法一: 利用Keep-Alive和监听器 1.首先在路由中引入需要的模块 { path: '/scrollDemo', name: 'scrollDemo', meta: { keepAlive:t ...
- VUE项目(单页面)问题之:从详情页返回列表页时返回到上次滚动位置,并还原列表页所有点击、搜索等状态
一.问题 新增需求,点击浏览器返回按钮或者详情页的返回按钮,需要返回列表页,并保存之前所有的状态. 二.经过 刚开始,用 this.$router.push({name: 'detailsPage', ...
- recyclerview 软键盘_android-打开键盘时,Recyclerview不会滚动到结尾
android-打开键盘时,Recyclerview不会滚动到结尾 我在应用程序中使用recylerview,并且每当将新元素添加到recyclerview时,它都会通过使用滚动到最后一个元素 rec ...
- android项目中记录ListView滚动停止位置与设置显示位置
2019独角兽企业重金招聘Python工程师标准>>> 在项目中经常使用到listView控件,当想记录滚动停止时的记录,当点击加载新的数据,从记录的位置开始显示的操作怎么实现尼?分 ...
- 用startSmoothScroll实现RecyclerView滚动到指定位置并置顶,含有动画。
RecyclerView滚动到指定位置并置顶 RecyclerView本身提供了几个定位的方法,除了手动滑动的scrollTo,smootScrollTo和scrollBy,smoothScrollB ...
- recyclerview 加载fragment_恢复 RecyclerView 的滚动位置
您可能在开发过程中遇到过这种情况,在 Activity/Fragment 被重新创建后,RecyclerView 丢失了它之前保有的滚动位置信息.通常这种情况发生的原因是由于异步加载 Adapter ...
- scrollTop记录滚动位置
前文提到,需要记录滚动位置, vue-router提供了一个方法 scrollBehavior,但是这个方法必须要在history模式下才能使用,具体参考文档 使用的方式如下 const scroll ...
最新文章
- 清华首超新加坡国立大学,成亚洲第一;苏州大学成211学科黑马丨US News 2021
- LeetCode 685. 冗余连接 II
- Searchable(搜索功能)(转)
- CCF 201703-3 Markdown
- 利用python爬取_在知乎上利用Python爬取了三百万数据!服务器崩了!企业级大项目...
- How-to: Use the ShareLib in Apache Oozie
- WinSock2编程之打造完整的SOCKET池
- ubuntu 开源镜像_Ubuntu手机可能对开源意味着什么
- Bootstrap3 插件的版本号
- java.io.IOException: Could not find my address
- android ar人脸贴图,ARCore与ARKit实现人脸贴纸、更换材质等动画效果
- 【python笔记】:python面向对象实现学生管理系统
- 使用docker run的选项以覆盖Dockerfile中的设置详解
- 职业技能鉴定 八大工种 广州紧缺工种 培训考证
- Win10屏保设置详细教程
- 猿大师VLC播放程序播放RTSP实时视频提示“系统找不到指定文件”
- 第二章 Qt窗体应用------修改标题栏图标
- #1_《经典控制理论复习》摘录
- 阿里巴巴:入门者最常问的几个问题
- Dave Cheney去了Heptio