有时候我们在界面对数据进行操作(如修改、删除),而在另一个页面也要进行相应的修改,但我们返回另一个页面的时候,它还是原来的样子(要的就是这样,因为我只是去别的页面做些操作而已,这个页面的信息我还是要看的,而这里要说的就是一些小的修改,如名字、某个标记的改变)。
就拿自己做的词典来说吧,这个词典浏览的时候有两个模式,一个列表,一个类似卡片的,当我们在列表浏览到一半的时候,我突然想看看卡片的效果,这时,我们就转到卡片模式,在卡片模式中我们浏览浏览,然后我就收藏了一个单词(收藏成功星星会亮)而这个单词正好在列表模式的时候它显示在哪里(星星没有亮的),这时候我们要回到列表了(用的是相当于返回上一页一样的方法),这时候回来我们会看到刚刚收藏的单词的收藏标记(星星)没有改变,这样就很尴尬了……
解决办法就是利用引用,取得另一个页面的控件,而当在本页面修改时就通知另一个页面的控件更新。
先说listview的更新;刚开始做的时候,我是直接在Item里用View取得控件然后直接修改控件的内容,但是上下拉之后,还是变成原来的样子了,原来是listview每显示一个Item就会调用一次getView(),而之前我只是修改了界面控件的值,并没有修改listview的数据源,所以就算我修改了数据库,listview的数据源还是原来查询出来的值。
对listview的数据源list的数据修改之后执行
- MyAdapter myAdapter = New MyAdapter ();
- myAdapter = (MyAdapter) listView.getAdapter();
- myAdapter .notifyDataSetChanged();
MyAdapter myAdapter = New MyAdapter (); myAdapter = (MyAdapter) listView.getAdapter(); myAdapter .notifyDataSetChanged();
取得另一个页面的控件,而当在本页面修改时就通知另一个页面的控件更新:
ActivityA页:
- //注:INSTANCE 是ActivityB的一个静态变量static ActivityB INSTANCE;INSTANCE=this;
- ActivityB.INSTANCE.getImageView().setImageResource(imID);//修改值
- ActivityB.INSTANCE.getImageView().invalidate();//通知更新
- //如果用到listview和list资源数组,一定要连list也一起修改
- //如:ActivityB.getList().get(0).put("name", value);
- //记得通知listview用notifyDataSetChanged()更新
//注:INSTANCE 是ActivityB的一个静态变量static ActivityB INSTANCE;INSTANCE=this; ActivityB.INSTANCE.getImageView().setImageResource(imID);//修改值 ActivityB.INSTANCE.getImageView().invalidate();//通知更新 //如果用到listview和list资源数组,一定要连list也一起修改 //如:ActivityB.getList().get(0).put("name", value); //记得通知listview用notifyDataSetChanged()更新
相关推荐
Android学习笔记 Android学习笔记 Android学习笔记
Android学习笔记
android 学习笔记(全全整理),吧android学习笔记全部整理下来了,可以去好好学习学习
第一行代码 android学习笔记 修改完整版
Android学习笔记(一)——创建第一个Android项目 Android学习笔记(二)android studio基本控件及布局(实现图片查看器) Android学习笔记(三)android studio中CheckBox自定义样式(更换复选框左侧的勾选图像) ...
Android 开发学习笔记,学习android的好资料
android 学习笔记 android 学习笔记 android 学习笔记
自己整理的Android学习笔记 都是一些小细节,有用
学习java和android的笔记 更容易学习android 资深学习android 具有大量学习的笔记 很多的错误 都是从细节开始学习的
Android学习笔记之常用控件,详细介绍各个控件的使用以及源代码
Android学习笔记,介绍怎么学习android。
Android学习笔记(十三) 碎片 完整源码
android学习笔记
Android学习笔记(1)-永远不变的Hello World Google的Android SDK发布也有一段时间了,一直想研究一下却苦于找不到时间。利用这个周未,开始强迫自己再次进入学习状态,原因很简单:我看好开放的gPhone。 SDK的下载...
Android学习笔记之AndroidManifest.xml文件解析
Android开发学习笔记(整理),整理论坛android学习笔记,较完整的讲解了android的内容。包括:view、activity、service、intent、广播机制、http连接、数据sqllite存储、后台线程、各种layout、偏好、本地文件操作、...
Android学习笔记(持续更新中)_李富强.doc
Android学习笔记之Button,Toast,menu的简单用法