android 数据刷新问题,RecyclerView数据不刷新问题
相关问题如下:
问题代码如下:
WorkAchievementAdapter adapter = new WorkAchievementAdapter(item.getWorkResultsPic(), mContext);
RecyclerView rvWorkAchievement = helper.getView(R.id.rv_work_achievement);
rvWorkAchievement.setAdapter(adapter);
adapter.notifyDataSetChanged();
代码看着没什么问题,但是数据就是不刷新,即使调用了adapter.notifyDataSetChanged();也没有作用。
问题出现原因:
RecyclerView跟ListView不一样,当我们想要更新数据的时候,有两种情况:
dataList = createDataList(5); //这是错误的做法,dataList为初始传入的List
dataList.addAll(createDataList(5)); //这是正确的做法
我们想要更新数据的时候,请记住这句话
“whenever adding or removing elements, always make changes to the existing list”
也就是说,请在原数据集上更新你的数据,而不是用一个新的数据集替代,记得最后要 mAdapter.notifyDataSetChanged()一下哟。
结论: 改变数据源的时候,一定要改变adapter真正的数据源:
所以修改之后的代码如下:
WorkAchievementAdapter adapter = new WorkAchievementAdapter(item.getWorkResultsPic(), mContext);
RecyclerView rvWorkAchievement = helper.getView(R.id.rv_work_achievement);
rvWorkAchievement.setAdapter(adapter);
adapter.setNewData(item.getWorkResultsPic());
adapter.notifyDataSetChanged();
在设置adapter之后需要在原地址数据上更新数据。
android 数据刷新问题,RecyclerView数据不刷新问题相关推荐
- android 刷新某条数据_Android 支持刷新、加载更多、带反弹效果的RecyclerView
点击上方"Android技术杂货铺",选择"标星" 干货文章,第一时间送达! 开篇 当前市面上很多支持刷新.加载更多RecyclerView开源库,为何我这里还 ...
- Android 天气APP(十)继续优化、下拉刷新页面天气数据
上一篇:Android 天气APP(九)细节优化.必应每日一图 修复每日一图,增加下拉刷新,滑动改变标题 新版------------------- 一.修复每日请求必应壁纸Bug 二.增加下拉刷新 ...
- android 在自定义的listview(有刷新加载项)列表中,数据过少时不能铺满整个屏幕时,header和footer同时显示问题...
android 在自定义的listview(有刷新加载项)列表中,数据过少时,当刷新时,加载项也会显示,这是很头疼的一个问题,查阅了一些资料,总结了一个比较不错的方法: 原来代码: 1 @Overr ...
- Android中ListView数据使用sAdapter.notifyDataSetChanged();方法不刷新的问题
原文链接:http://blog.csdn.net/caihongdao123/article/details/51513410 点击阅读原文 ------------------------- 1 ...
- Android Compose 新闻App(四)下拉刷新、复杂数据、网格布局、文字样式
Compose 新闻App(四)下拉刷新.复杂数据.网格布局.文字样式 前言 正文 一.下拉刷新 ① 添加依赖 ② 使用 ③ 样式更改 二.刷新数据 三.复杂数据 四.复杂列表 ① 更改返回数据 ② ...
- android局部布局刷新,Android之RecyclerView的局部刷新
局部更新方法 1.使用Diffutil进行数据的比较 [Android]详解7.0带来的新工具类:DiffUtil 1.1一个相对完整的例子 Android高性能列表:RecyclerView + D ...
- H5在安卓微信浏览器返回时动态获取的数据不会保留(页面刷新了数据初始化了)
解决思路: 判断机型 跳转前将 动态构建的页面内容缓存在sessionStorage中 页面加载时,先从sessionStorage中获取数据 存在缺陷: 抑制了在窗口刷新能力 点击刷新,页面动态数据 ...
- 使用Vant框架的组件van-pull-refresh搭配van-list和van-card完成上滑加载更多列表数据,下拉刷新当前列表数据(等同于翻页功能)
<template><div class="sg-page-body"><div class="sg-list"><v ...
- Response_输出数据,实现文件下载,定时刷新页面,是否缓存,重定向,实现验证码...
1.Response_输出数据 1.Web服务器收到客户端的http请求,会针对每一次请求,分别创建一个用于代表请求的request对象.和代表响应的response对象. ServletRespon ...
最新文章
- craigslist_Craigslist,Wikipedia和丰富经济
- Liunx下MySQL常用命令
- 使用Vue.js进行数据绑定以及父子组件传值
- 严蔚敏数据结构:链表实现一元多项式相加
- Linux的实际操作:查询用户id切换用户su -
- 如何针对业务设计架构?——QCon热点专题前瞻
- 如何区分广播风暴和网络环路?
- 追捕文件WRY.DLL的浅显分析及程序示例
- 离散实验一 油管铺设 (求最小生成树的Prim算法的实际应用)
- TikTok搬运视频怎么做,搬运怎样的视频最好
- 性价比天花板:如何在预算有限的情况下吃得美味又健康
- Linux二进制exploit入门
- python读取短信验证码_我用Python给你发了个短信验证码,你也来试试
- Java中的集合---------Collections 类---集合的工具类 Comparator比较器
- 天普大学计算机专业,西安电子科技大学关于美国Temple University (天普大学)计算机系诚招全奖博士生的通知...
- 解决:FreeMind需要jre才能运行,明明已经安装了jdk啊?
- (保姆教学)Failed to connect to github.com port 443 after 21094 ms: Timed out
- shell python运维脚本_【Python运维】最简单的Python运维脚本
- 最新阿里P7技术体系:拼多多三面惨败,2021最新版!
- 计算机常用数制转换说课稿,数制及其转换说课稿doc.doc