首页 理论教育 解决ListView数据更新问题

解决ListView数据更新问题

时间:2023-06-17 理论教育 版权反馈
【摘要】:本节引言前面已经学习了ListView的一些基本用法,但是细心的用户可能会发现,数据一开始是定义好的,都是静态的,但在实际开发中,数据往往都是动态变化的。本节我们就来探讨下ListView数据更新的问题,包括全部更新和其中一项的更新。新建一个类AndroidBean,用于设置Listview中的加载项。图2.142.添加一条记录布局文件增加一个按钮activity_main.xml。图2.15如果在指定位置插入一条数据,MainActivity.java中addData方法代码如下:运行效果,见图2.16。

解决ListView数据更新问题

本节引言

前面已经学习了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()方法即可进行处理。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈