Java 如何从asynctask更新导航抽屉项?

Java 如何从asynctask更新导航抽屉项?,java,android,android-asynctask,navigation-drawer,Java,Android,Android Asynctask,Navigation Drawer,OnCreateI确实: incidentItem = new NavDrawerItem(navMenuTitles[1], navMenuIcons.getResourceId(1, -1)); navDrawerItems.add(incidentItem); 而且 onPostExecute: incidentItem = new NavDrawerItem(navMenuTitles[1], navMenuIcons.getResourceId(1, -1), true, "10")

OnCreate
I确实:

incidentItem = new NavDrawerItem(navMenuTitles[1], navMenuIcons.getResourceId(1, -1));
navDrawerItems.add(incidentItem);
而且

onPostExecute

incidentItem = new NavDrawerItem(navMenuTitles[1], navMenuIcons.getResourceId(1, -1), true, "10");
adapter.notifyDataSetChanged();

它不工作,没有错误,没有更新。

假设
navDrawerItems
集合

onCreate
方法中,创建一个新的
NavDrawerItem
,并将对它的引用存储在
navDrawerItems
集合中

onPostExecute
方法中,创建另一个新的
NavDrawerItem
,并且对引用不做任何操作。您可以调用
notifyDataSetChanged()
,但适配器仍然具有对旧
NavDrawerItem
的引用

您希望在
onPostExecute
中执行以下操作之一:

  • 检索原始引用,例如
    navDrawerItems.get(0)
    ,并更新其中的数据
  • 删除原始引用,然后添加新引用,与前面一样

如果我再次添加它
navDrawerItems.add(incidentItem)它会将它添加到底部很好的解释,我希望你能添加一些代码,我不知道如何处理这个问题。我需要添加哪部分?您是否在适配器的“我的问题”部分(不是getview方法)中看到了代码,以及如何处理navdraweritems?