Как и многие другие, я борюсь с этой ошибкой:
java.lang.IllegalStateException: фрагмент xyz не присоединен к Деятельности
Этот вопрос предлагает несколько идей о том, как с этим бороться.Однако нет никаких объяснений вопроса, почему Фрагмент отрывается от своей Деятельности в первую очередь?Помогает ли понимание того, почему это происходит, спроектировать мое приложение таким образом, чтобы этого не происходило?
В случае, если у меня нет какой-либо асинхронной задачи, я вызываю getResources()
, когда она завершается;Я называю getResources()
в методе Фрагмента onCreate()
.И иногда, когда я довольно быстро перемещаюсь по своему приложению, появляются ошибки.Следует ли ожидать, что Фрагмент даже не обязательно будет привязан к своей Деятельности во время его собственного onCreate()
метода?
Во-вторых, решения, представленные в связанном вопросе (защита getResources()
с помощью isAdded()
и getActivity() != null
) не помогай мне.Не существует разумного способа справиться с недоступностью getResources()
.