java - Android:如何在不从数组列表中删除数据的情况下清除 ListView ?

标签 java android

我正在尝试创建一个 ListView ,它根据微调器的选择显示不同的数据。

我的 ListView 是通过一个工作正常的基本适配器实现的。

我的数据存储在一个对象数组列表中,每个对象包含存储单个数据的字段,并根据微调器的选择过滤存储在数组列表中的数据并将其显示在 ListView 中。

但我的问题是如何在不清除其基础数据(存储在数组列表中)和调用 notifyDataSetChanged 的​​情况下清除 ListView 内容?我希望能够保留存储的数据,这样如果用户返回到之前的选择,数据仍然存在。

感谢您花时间阅读本文。

最佳答案

由于您的数据存储在 ArrayList 中,您可以简单地使用:

listView.setAdapter(null);

它将删除您的 ListView 的适配器,因此删除所有显示的项目。

数据仍将在您的 ArrayList 中,因此如果您想重新显示此 ListView,您只需重新创建您的 Adapter并重新设置。您甚至可以创建 BaseAdapter 的全局实例,这样您只需创建一次。

关于java - Android:如何在不从数组列表中删除数据的情况下清除 ListView ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24514886/

相关文章:

android - 按Genymotion 2.9版的按钮后,应用程序崩溃,但可在2.8版上运行

android - 如何将任意变换矩阵设置为 View ?

java sendkeys 错误键应该是一个字符串

java - Spring MVC 4 : "application/json" Content Type is not being set correctly

java - 随机井字游戏图像翻转

单击edittext时android自动滚动

java - 如何从串行端口读取文本?

java - 使用方法调用合并两个数组

android - 用于 Android 开发的 Maven 集成

android - Odex 文件与 dex 文件