如何有效地更改ArrayAdapter的基础列表?

时间:2015-07-13 14:39:35

标签: android android-arrayadapter

我创建了一个扩展ArrayAdapter的CustomArrayAdapter,并使用ArrayList list1对其进行初始化。在用户操作后,我创建了第二个列表list2,需要花费一些时间来填充。成功创建后,我希望CustomArrayAdapter使用list2作为数据源。

例如:

list2 = new ArrayList<>();
//actions that populate list2
list1 = list2;
customAdapter.notifyDataSetChanged();

但是,当然,customAdapter不会更新,因为它仍然会查看list1 使用指向的内存地址,因此它仍然使用旧数据。

有效更改我的customAdapter用于数据的列表的最佳方法是什么?例如,我可以这样做:

list1.clear();
list1.addAll(list2);

但这会非常低效。

0 个答案:

没有答案