Мое приложение не имеет XML. Все это сделано из Java-кода динамически. В приложении, когда в портретном режиме отображается только один экран - фрагмент, который изменяется внутри FrameLayout
внутри одного действия. При вращении одно и то же действие получает еще один FrameLayout
(справа) для отображения двух половин экрана.Сохранение стека при изменении конфигурации в динамическом приложении с одной активностью
Приложение имеет пользовательский поток фрагментов. Если пользователь поворачивается на пейзаж, в левой половине экрана отображается меню (ListFragment
), а правая половина экрана пуста.
Если пользователь выбирает один элемент из ListFragment
(на левой стороне), правый FrameLayout
показывает другой ListFragment
или FormFragment (это зависит от ответа JSON). Если другой список показывает в правильном FrameLayout
, если пользователь выбирает один элемент из этого списка, теперь это ListFragment
идет в левой FrameLayout
, а справа FormFragment т.д.
Так что это «прекрасный танец» замены фрагменты внутри левого и правого FrameLayouts, которые затем помещаются в заднюю часть. Поэтому, если пользователь в какой-то момент поворачивает экран, мне нужен способ сохранить эту заднюю часть, поэтому пользователь может вернуться через стоп-кадр, когда он находится в ландшафте.
Кроме того, если пользователь находится в портретном режиме, мне также нужен способ сохранить эту заднюю часть, когда он поворачивается от пейзажа к портрету.
Проблема:
Как сохранить (сохранить) в backstack всех фрагментов, если пользователь поворачивает экран от портрета до пейзажа, и наоборот, так что он может вернуться, как это не было никаких изменений вообще.
Можно ли добиться этого в Android? Я пробовал с setRetainInstance(), но я также читал, что это не так, если вы хотите работать с backstack, а также я очень новичок во всем этом, поэтому, если кто-нибудь может помочь мне с этой проблемой.
Заранее благодарен!
Да, я использую, что при замене фрагментов во время выполнения. Мое приложение прекрасно работает, если оно находится в портретном или ландшафтном режиме, но только в том, что мне нужен способ сохранить целую заднюю часть во время изменения конфигурации. – ravenns