Android Listview notifyDataSetChanged() 不起作用

bash 复制代码
private ArrayList<Map<String, String>> data = new ArrayList<Map<String, String>>();  
private ArrayList<Map<String, String>> delivered_data= new ArrayList<Map<String, String>>();  

如果直接将arraylist 的数据直接复制,无法完成更新

复制代码
data = delivered_data;
adapter.notifyDataSetChanged();

单个元素改变时候,可以更新

bash 复制代码
data.get(position).put("status", Select[0]);  //change the status 
adapter.notifyDataSetChanged();

如果要以数据list直接传递,需要用下面方法

bash 复制代码
 data.clear();
 data.addAll(delivered_data);
 adapter.notifyDataSetChanged();

更改listview用到下面项目中:

相关推荐
auxor4 小时前
Android 开机动画音频播放优化方案
android
whysqwhw4 小时前
安卓实现屏幕共享
android
深盾科技5 小时前
Kotlin Data Classes 快速上手
android·开发语言·kotlin
一条上岸小咸鱼5 小时前
Kotlin 基本数据类型(五):Array
android·前端·kotlin
whysqwhw5 小时前
Room&Paging
android
whysqwhw5 小时前
RecyclerView超长列表优化
android
Tiger_Hu5 小时前
Android系统日历探索
android
whysqwhw5 小时前
RecyclerView卡顿
android
whysqwhw6 小时前
RecyclerView 与 ListView 在性能优化方面
android
檀越剑指大厂9 小时前
容器化 Android 开发效率:cpolar 内网穿透服务优化远程协作流程
android