Восстановить предыдущее состояние фрагмента при повороте и расположении в backstack
У меня есть приложение с одним действием, показывающим фрагмент пользователю. При нажатии на кнопку действие показывает другой фрагмент, но сохраняет предыдущий в backstack
, У меня сейчас две проблемы:
- При вращении (особенно во втором фрагменте) данные вводятся в
EditTexts
очищается - Я хочу
backstack
также должен быть восстановлен с текстом, ранее введенным во втором фрагменте.
Проблема в том, что когда я сохраняю данные для связки, используя OnSaveInstanceState(...)
Я успешно получил его снова из OnViewCreated(...)
но когда я использую editText.setText(str)
Текст не отображается.
На данный момент, я думаю, это потому, что фрагмент затем уничтожается и воссоздается родительским действием.
Как я могу сделать, чтобы это работало должным образом?
Благодарю.
1 ответ
Сделайте ваши фрагменты сохраняемыми:
setRetainInstance(true);
Смотрите следующее руководство по изменению ориентации состояния android изменения ориентации `