更新阵列适配器中的列表项

时间:2014-10-10 22:31:14

标签: android arraylist

我一直在尝试通过执行以下操作来更新列表视图的最后一个元素

mNavTitles.remove(last_position); //mNavTitles is an ArrayList<string>
mNavTitles.add("Notifications Disabled");
((BaseAdapter)mDrawerList.getAdapter()).notifyDataSetChanged();

然而,这不起作用。如果我选择单独添加或删除,这可以正常工作。为什么我不能通过删除然后添加来更新我的列表?如果这不可能,我将如何以最简单的方式更新它?我已经看到了涉及重新创建整个数组列表的解决方案,但我真的不明白为什么在添加和删除这两个工作时都需要这样做。

编辑,更多背景:

这是在导航抽屉中的onitemclick监听器内部发生的。当单击最后一个导航项时,应该更新项目的标题文本。我无法更新onclick,只需添加xor删除列表项。

1 个答案:

答案 0 :(得分:0)

mNavTitles.set(index-number,“new value”);

例如,如果您想更新arraylist中的第5个元素。你应该尝试按照

mNavTitles.set(5,“新值”);