我有一个活动和一个片段。该片段由ViewPager
和ListFragments
组成。 listfragments使用AsyncTask
从数据库获取数据。
listfragment在此方法中从db获取数据:
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
refreshList();
}
private void refreshList() {
myTask = new MyTask();
myTask.execute((Void)null);
}
第一次显示活动时,一切都按预期工作。用户可以点击listfragment中的项目并显示dialogfragment。如果用户点击“是”'要删除所选项目,将关闭对话框片段,在活动中执行代码,活动通知列表片段(通过界面)从列表中删除项目(通过getListAdapter()
)。
然而,问题是我在尝试刷新列表并显示进度条时遇到此异常:
IllegalStateException:未附加到活动
ListFragment未从屏幕中滑出。 isAdded()
方法返回false
。
那么为什么它与活动分离,什么是保持附着(或重新附加)的正确方法?