关于ListView中notifyDataSetChanged()刷新数据不更新原因
使用Listview的时候: 当要动态显示更改后的 数据 (例如 数据 库改动), 很多人应该都用过notifyDataSetChanged();这个方法来刷新Listview,显示改后的 数据 .
这时候就要注意了:
......
private ArrayList<HashMap<String, Object>> usersList;
......
usersList= query(......); //根据查询函数获取一个ArrayList并赋值给绑定到Adapter的 数据 源usersList
sAdapter.notifyDataSetChanged();
......
如果你也是: 上面这种形式去刷新ListView的 数据 的话, 是不可以 更新 的. 必须改成如下形式:
......
//usersList= query(......);
usersList.clear();
usersList.addAll(query(......));
sAdapter.notifyDataSetChanged();
///
原因是: sAdapter会通过usersList获取List中的内容。但是实际上可能(也应该)是,在调用super(MyActivity.this, R.layout.item, usersList)时sAdapter保存了usersList指向原List(假设为List a)的引用,在调用query函数之后,usersList指向了一个新的List(List b)。但是在调用notifyDataSetChanged()时,sAdapter会跟据保存的引用(即指向List a的引用)去 更新 ,因此当然还是原来的结果,不会进行 更新 。
如果大家也出现这种情况可以使用后者去刷新ListView, 应该就没问题了
地址:http://www.eoeandroid.com/forum.php?mod=viewthread&tid=192565
关于ListView中notifyDataSetChanged()刷新数据不更新原因相关推荐
- android listview 刷新数据,ListView中notifyDataSetChanged()刷新数据不更新原因分析
标题 : 不作死就不会死!!!!!! 类 : ActivityA,ActivityB,BookListAdapter,Book,HttpManager 测试顺序 : ActivityA >> ...
- 【PowerQuery】在Excel中手动刷新数据连接
将数据通过PowerQuery 导入进来后,这里将进行数据分组运算,最终的数据计算结果将保存在Excel 表格中,图1为数据导入结果. 图1 使用PowerQuery 加载导入的数据 在Excel中, ...
- datagrid wpf 刷新数据_wpf – 更新数据源时刷新Datagrid
我有一个数据网格,显示一个绑定到DataSource的表,该数据源不断更改时间约束. 如何在更新myDataSource值时刷新数据网格的内容. P.S:我的DataSource表中的值由监控系统更新 ...
- RecyclerView中notifyDataSetChanged刷新总结
除了adapter.notifyDataSetChanged()这个方法之外,新的Adapter还提供了其他的方法,如下: public final void notifyDataSetChanged ...
- android ListView中含有按钮事件实时更新ListView数据案例-1
1.布局文件Listview <?xml version="1.0" encoding="utf-8"?> <android.support. ...
- 前端笔记-vue cli中v-bind动态数据实时更新
目录 基本概念 代码 基本概念 如下的例子,刚开始运行: 点击按钮: 数据库修改下数据: 再点击按钮刷新下: 下面给出请求的json数据: 刷新有2个方式 第一种是强制刷新,这样是有问题的,数据和图表 ...
- Flutter ListView 局部刷新数据、ListView点赞收藏
题记 -- 执剑天涯,从你的点滴积累开始,所及之处,必精益求精. Flutter是谷歌推出的最新的移动开发框架. [x1]微信公众号的每日提醒 随时随记 每日积累 随心而过 [x2]各种系列的视频教程 ...
- android notifydatasetchanged 刷新错误,Android中适配器的notifyDataSetChanged()为何有时不刷新...
学过Android开发的人都知道,ListView控件在开发中经常遇到,并且ListView通常结合Adapter适配器来进行数据显示和数据更新操作.姑且假设数据存储在名为dataList的成员变量中 ...
- android 解决listview.notifyDataSetChanged刷新时Imageloader加载图片闪烁问题
今天,简单讲讲android里再listview调用notifyDataSetChanged刷新界面时,Imageloader加载图片会闪烁的问题. 最近,发现app里的listview图片会出现闪烁 ...
最新文章
- 数据分析(EDA)学习总结!
- 【Keras】Linux一个shell脚本安装python、keras、tensorflow、anaconda等~
- 通过btrace排查线上频繁Full GC的case
- python有道词典-利用Python3和Charles爬取有道词典
- VC 在CStatic控件上绘图
- BZOJ1787: [Ahoi2008]Meet 紧急集合
- 微信小游戏背后的技术优化
- SAP Commerce Cloud OCC User Role
- Python Pandas –操作
- typora 分割线_实战 | 五分钟,使用Typora+PicGo提升百倍写作效率
- nacos动态配置数据源_Sentinel使用Nacos存储规则及同步
- 没有第三个变量的前提下交换两个变量_很多人连Python变量都没搞懂,说自己会python
- sagemath matlab,开源跨平台数学软件SageMath v8.1
- 2019ZIF郑州工博会 盛大起航
- linux df -hl 数据解释,linux磁盘空间查看命令(du,df)剩余空间查看详解
- STM32开发环境搭建——Keil5
- 人工智能本科专业高校名单大全(440所)
- Struts2检测工具
- 学生成绩管理系统(合并文件,查找,总分排序,保存补考学生信息)
- .NET在蹉跎中一路前行1
热门文章
- Java安全—CommonsCollections3
- 利用鼠标滚轮事件让页面横向滚动
- GIS(地理信息系统/地理信息科学)职称评审三:中科院和人社部职称评审结果公示对比
- 关于ArcGISPro镶嵌数据集导入多源大批量栅格数据出现空白情况的解决方案
- 净亏损1166亿?“短视频第一股”首份年报藏了这些玄机
- C语言数据结构-第四章 串-电大同步进度
- 重新安装 Internet Explorer
- 时代金融杂志时代金融杂志社时代金融编辑部2022年第12期目录
- 小学五年级如何引导学计算机,孩子小学五年级作业写拖拉爱走神,该怎么引导?...
- 图像压缩算法构造最优解c语言,基于Handel-C的CCSDS图像压缩算法实现研究