android ListView : adapter. 添加(项目)?或 adapter.notifyDataSetChanged()

标签 android listview

当我使用 ListView 时,我扩展了 ArrayAdapter 并将数据(一个列表)存储在 ArrayAdapter 中,因此当数据更改时,我调用:

adapter.add(item).;

还有另一种选择,将数据存储在我的列表中,当数据更改时,在 MyAdapter.java 中调用:

 listView.setAdapter(adapter);
 adapter.notifyDataSetChanged();

哪个是最好的选择?

最佳答案

当然 adapter.add(item); 然后调用 notifyDataSetChanged() 是比初始化新适配器并再次设置它更好的方法。但只有当我们使用相同的列表并添加或删除一些元素时它才会起作用。当我们改变整个列表时它不会起作用,我们应该使用 list.addall(nList)。

关于android ListView : adapter. 添加(项目)?或 adapter.notifyDataSetChanged(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18908581/

相关文章:

javascript - 将 html5 canvas 元素保存到文件(本地)

android - 应用程序进程被终止时不要打开最后一个 Activity

node.js - 如何使用 socket.io 更新 Yii2 ListView 中的单独项目

c# - 带有滚动背景图像的 ListView

PlayStore 控制台中的 Android 崩溃

android - bottomNavigationView 内边距或边距上的徽章

java - 使用 toObject 方法将 Snapshot 转换为 POJO 时,将包含 Date 对象的代码转换为 Firebase.Timestamp 对象的最佳方法

c# - ListView 鼠标点击事件

Android:Listview 的 onItemClick() 事件未被调用

c# - 如何在 Xamarin.forms xaml 中水平显示 ListView 中的项目?