listview中adapter的notifyDataSetChanged()不生效的问题
来源:互联网 发布:谷歌翻墙软件下载 编辑:程序博客网 时间:2024/05/22 08:08
adapter中的数据源集合或数组等必须是同一个数据源,也就是同一个对象。
比如从数据中查找了字符串集合来当做adapter中的数据源:
先初始化数据源,然后将数据源设置到adapter中
List<String> list = Dao.getInstance().queryAllData();//初始化数据源
XXXAdaper adapter = new XXAdapter(list);//设置数据源
当数据源发生变化的时候,我们会调用adaper的notifyDataSetChanged()方法,当直接将从数据库或者其他方式获取的数据源集合或者数组直接赋值给当前数据源时,相当于当前数据源的对象发生了变化,当前对象已经不是adapter中的对象了,所以adaper调用notifyDataSetChanged()方法不会进行刷新数据和界面的操作。错误的方法:
list = Dao.getInstance().queryNewAllData();adapter.notifyDataSetChanged();
正确的方法:List<String> newList = Dao.getInstance().queryNewAllData();list.clear();list.addAll(newList);//或者采用遍历的方式加入集合adapter.notifyDataSetChanged();
关键就在于数据源的对象不能发生改变。
- listview中adapter的notifyDataSetChanged()不生效的问题
- listview中adapter的notifyDataSetChanged()不生效的问题
- listview中adapter的notifyDataSetChanged()不生效的问题
- Adapter中notifyDataSetChanged()不刷新GetView的问题
- 关于Adapter的notifyDataSetChanged是否生效
- 关于Adapter的notifyDataSetChanged是否生效
- RecyclerView 中adapter.notifyDataSetChanged()无效的问题
- 关于ListView中adapter调用notifyDataSetChanged无效的原因
- 关于ListView中adapter调用notifyDataSetChanged失效的原因总结
- ListView中adapter调用notifyDataSetChanged无效的原因
- 关于ListView中adapter调用notifyDataSetChanged失效的原因总结
- 关于Adapter的notifyDataSetChanged()方法数据不更新问题解析
- Adapter中notifyDataSetChanged的作用
- Adapter中notifyDataSetChanged的作用
- notifyDatasetChanged() listview gridview 不生效的一种加分享别人的遇到的情况
- listview中adapter不使用notifyDataSetChanged单刷子item
- ListView中adapter不展示(代码冗余度的问题)
- 关于 ListView 调用 notifyDataSetChanged 不刷新的问题
- linux内核函数功能介绍收集
- python 判断类型
- 1.4 算法和算法分析
- 如何查询ISTP源期刊检索
- hdu1429(bfs利用状态压缩)
- listview中adapter的notifyDataSetChanged()不生效的问题
- mysql连接参数详解
- android选择图片或拍照图片上传到服务器(包括上传参数)
- 多线程的零学习(一)
- 矩阵基础知识
- Case when ....then的用法
- Android 读取文件数据
- /dev/mapper/VoLGroup00-LogVol00 占空间100%
- 理解Load Average做好压力测试