情景: 我有一个显示朋友列表的列表片段。当按下列表项时,我将在对话框片段中显示该朋友的详细信息。
问题: 在对话框片段中,我可以选择从朋友列表中删除朋友(在远程服务器中)。我正在使用Async tack来执行此操作。从对话框片段返回后,我应该如何更新“旧”朋友列表。 如何触发片段'重新加载'。由于异步任务不知道列表片段中使用的自定义列表适配器。
抱歉,我会尽快添加代码。如果有人遇到过这种情况,请先提出建议。
编辑:从远程服务器中的好友列表中成功删除好友后,我想重新加载列表片段中显示的列表。有没有办法在列表片段本身中触发dataSetChanged通知。
答案 0 :(得分:1)
因此,您将使用ArrayList填充ListView。
答案 1 :(得分:0)
没问题。我猜测ListFragment
正在读取某些数据源 - 无论是ArrayAdapter
还是SimpleCursorAdapter
(或类似的东西) - 您的任务也在修改该来源。当AsyncTask
完成后,您应该能够获取该片段并更新基础数据。例如:
// ...
void onPostExecute(Void result) {
ListFragment lFrag = (ListFragment) getFragmentManager().findFragmentById(R.id.yourListFragment);
BaseAdapter adapter = (BaseAdapter) lFrag.getListAdapter();
adapter.notifyDataSetChanged();
}