Loader и onLoadFinished() после изменения ориентации
Я запускаю загрузчик для onCreate() фрагмента, как этот фрагмент:
if (null == savedInstanceState) {
Bundle args = new Bundle();
getLoaderManager().initLoader(0, args, this);
}
хорошо, это работает, и данные обычно возвращаются на onLoadFinished()
, Но если я меняю ориентацию, пока загрузчик еще загружает данные, то onLoadFinished()
никогда не вызывается после. Пожалуйста, может кто-нибудь объяснить мне, почему? Спасибо
1 ответ
Решение
Вы должны удалить if (null == savedInstanceState)
check - добавляя эту проверку, загрузчик не перемещается в состояние "запущено", когда действие воссоздается, и только запущенные загрузчики будут возвращать результаты.