当我使用 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/