Android SimpleAdapter使用List<Map<?,?>>绑定数据,添加数据的问题。 打印2种方法中mylist .size()和mylist 中的元素看有什么不同? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 mylist.addAll(getTheList());重点在这里 我感觉! 第一个不工作正常,只是改变mylist的引用对象。SimpleAdapter mySimple = new SimpleAdapter(this, Entity.mylist, R.layout.listview, from, to);第一种方法更新数据:mylist = getTheList(); 改变对象,mySimple内存储的还是new SimpleAdapter时传入的对象mySimple.notifyDataSetChanged();第二种方法更新数据:mylist.clear();mylist.addAll(getTheList()); 改变的是内容mySimple.notifyDataSetChanged(); 4楼说的不错啊mylist = getTheList(); 只改变了对象的引用,mylist 还是指向原来在堆栈中内存地址mylist.addAll(getTheList());彻底改变了mylist原来在堆栈中内存地址,指向了新的内存地址 汗。。话说lss 有做过实验吗。。我刚刚试了事实上改变引用 调用notifyDataSetChanged()完全可以的刷新话说回来lz这段代码是 盲打还是复制来的static List<Map<String, Object>> getTheList(){List<Map<String, Object>> list1 = new ArrayList<Map<String, Object>>();list1.add(Entity.createEntity(R.drawable.icon, "first", "first"));list1.add(Entity.createEntity(R.drawable.icon, "second", "second"));return list;}返回的为什么不是list1.。具体不怎么不正常? TAT。TAT囧4楼是对的我实验的时候省懒 写内部类 只有有个引用。。 呵呵 害我去试验了下 没错,要操作mySimple创建时传进的对象才有效的 这个说的有道理,代码是盲打的,应该返回list1,各位不好意思 android客户端的后台服务器开发环境用Eclipse还是MyEclipse ? Android中layout的层级 怎么修改android的项目路径 android开发如何实现后台隐藏安装功能 android摄像头采集 + x264进行编码 按两次返回键结束整个程序 安卓客户端的问题 android录视频并显示缩略图 我们有没有办法得到webview中,某一个网页元素的屏幕坐标? 分享微信朋友后不能返回app Opengl纹理问题 怎么改变tabhost选项卡被选中的图片
mylist.addAll(getTheList());
重点在这里 我感觉!
第一种方法更新数据:
mylist = getTheList(); 改变对象,mySimple内存储的还是new SimpleAdapter时传入的对象
mySimple.notifyDataSetChanged();第二种方法更新数据:
mylist.clear();
mylist.addAll(getTheList()); 改变的是内容
mySimple.notifyDataSetChanged();
mylist = getTheList(); 只改变了对象的引用,mylist 还是指向原来在堆栈中内存地址
mylist.addAll(getTheList());彻底改变了mylist原来在堆栈中内存地址,指向了新的内存地址
事实上改变引用 调用notifyDataSetChanged()完全可以的刷新话说回来lz这段代码是 盲打还是复制来的static List<Map<String, Object>> getTheList(){
List<Map<String, Object>> list1 = new ArrayList<Map<String, Object>>();
list1.add(Entity.createEntity(R.drawable.icon, "first", "first"));
list1.add(Entity.createEntity(R.drawable.icon, "second", "second"));return list;
}返回的为什么不是list1.。具体不怎么不正常?