【发布时间】:2014-09-07 21:02:52
【问题描述】:
我这样做是为了理解。就我而言,我有一个由BaseAdapter 扩展的类。在新类中,我传递了我想绑定到 android 中的ListView 的对象列表,并且我保留了对该传递对象列表的引用。
ListView list2 = (ListView)findViewById(R.id.attachmentList);
list2.setAdapter(new LazyAdapter(BaseAdapterExtention.this,getApplication().getInteraction().getList() ));
像上面一样,我将传递的数据保留为单例getApplication().getInteraction().getList(),我称之为获取数据。
每个列表项都有一个按钮,每个列表项按钮都有一个单击侦听器,当单击一个按钮时,我将删除该项并重新填充单例对象中的数据集,如下所示
getApplication().getInteraction().setList(listofObjects)。
为此,我调用了一个异步任务并传递了这个适配器
new ListAsync(activity,BaseAdapterExtention.this).execute();
在onPostExecute() 中,我调用adapter.notifyDataSetChanged()。但适配器对象列表是相同的,删除不会反映在该列表中,因此,list view 是相同的。
我做错了什么?
【问题讨论】:
标签: java android android-asynctask baseadapter