方向改变后的 Loader 和 onLoadFinished()

Loader and onLoadFinished() after orientation change

我在 Fragment 的 onCreate() 上初始化了一个加载器,就像这个片段:

if (null == savedInstanceState) {
    Bundle args = new Bundle();
    getLoaderManager().initLoader(0, args, this);
}

好吧,它工作正常,数据通常在 onLoadFinished() 上返回。但是如果我在加载程序加载数据时改变方向,那么 onLoadFinished() 永远不会被调用。 拜托,有人可以向我解释为什么吗?谢谢

您需要删除 if (null == savedInstanceState) 检查 - 通过添加该检查,加载程序不会在 activity 重新创建时移动到 'started' 状态,并且只有启动的加载程序将 return 结果。