У меня крушение обезьяны, где
java.lang.IllegalStateException: Failure saving state: FragmentB has target not in fragment manager: FragmentA
at android.support.v4.app.FragmentManagerImpl.saveAllState(FragmentManager.java:1561)
at android.support.v4.app.FragmentActivity.onSaveInstanceState(FragmentActivity.java:475)
at com.acme.ParentActivity.onSaveInstanceState(Unknown Source)
В основном FragmentA загружает FragmentB и setTargetFragment
вызывается для установки фрагмента фрагмента FragmentB.
FragmentB затем просто вызывает getTargetFragment
в своем методе onCreate
и зависает с целью, когда это необходимо.
Теперь я ничего не делаю в любом из вызовов onSaveInstanceState
с целевым фрагментом с точки зрения установки его нулевого значения, делая любые вызовы saveFragmentInstanceState
, putFragment
и т.д. Вопрос в том, должен ли я что-то делать с ним?
Спасибо заранее,
Петр.
** Изменить 1 ** Я использую старую версию библиотеки поддержки и чувствую, что это может быть исправлено в последней версии, будет проверяться дальше и предоставить дополнительное обновление, если это так. Тем не менее, все еще интересно узнать, нужно ли мне что-либо делать с целевым фрагментом, который я сейчас не делаю.
** Редактировать 1 ** Исправлено с версией 8 библиотеки поддержки (не пробовали другие).