本节引言
前面已经学习了ListView的一些基本用法,但是细心的用户可能会发现,数据一开始是定义好的,都是静态的,但在实际开发中,数据往往都是动态变化的。比如用户增删改了某一列,那么列表显示的数据也应该同步地进行更新。本节我们就来探讨下ListView数据更新的问题,包括全部更新和其中一项的更新(部分更新)。
1.先实现一个正常的ListView
(1)新建一个module,命名为ListViewUpdataDemo。
(2)新建一个自定义布局文件list_item.xml。
(3)收集8个头像图片,并导入至drawable文件夹。
(4)新建一个类AndroidBean,用于设置Listview中的加载项。
(5)布局文件activity_main.xml。
(6)MainActivity.java。
(7)运行效果,见图2.14。
图2.14
2.添加一条记录
(1)布局文件增加一个按钮activity_main.xml。
(2)MainActivity.java中addData方法代码如下:
(3)运行效果,见图2.15。
图2.15
(4)如果在指定位置插入一条数据,MainActivity.java中addData方法代码如下:(www.xing528.com)
(5)运行效果,见图2.16。
图2.16
3.删除某一项
(1)布局文件增加一个按钮activity_main.xml。
(2)MainActivity.java中deleteData方法代码如下:
(3)运行效果,见图2.17。
图2.17
(4)在MainActivity.java中的onCreate()方法中增加一个item的长按事件监听,通过长按某个item删除它,相关代码如下:
长按item事件处理代码如下:
(5)运行效果,见图2.18。
图2.18
4.移除所有的记录
方法比较简单,直接调用clear方法即可,方法代码如下:
5.更新某一个记录
notifyDataSetChanged()方法会判断是否需要重新渲染,如果当前item没有必要重新渲染是不会重新渲染的。如果某个Item的状态发生改变,都会导致View的重绘,而重绘的并不是所有的Item,而是View状态发生变化的那个Item,因此用户可直接运用notifyDataSetChange()方法即可进行处理。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。