Android: Как изменить стек FragmentManager при возврате назад (вставить новый фрагмент)?Android

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Android: Как изменить стек FragmentManager при возврате назад (вставить новый фрагмент)?

Сообщение Anonymous »

Я пытаюсь добавить представление в стек фрагментов без каких-либо видимых указаний на то, что это произошло, поэтому оно появляется при возврате назад.
Например,
3 фрагмента, A, B и C
A -> C
Затем, возвращаясь НАЗАД из C, я хочу, чтобы B появился (т. е. мы «пропустили» его)
C -> B -> A
Моя проблема в том, что все они должны быть совместимы с backstack + анимацией.
Я могу показать B, перехватив обратное событие и выполнив транзакцию фрагмента, чтобы заменить C на B (и инвертировать анимацию, чтобы она «входила», как будто C выскочил), но затем возвращение назад меняет это, поэтому я застреваю в цикле C -> B -> C -> B.
Я сначала пытаюсь вызвать PopBackstack, прежде чем выполняет транзакцию, но затем C просто «исчезает» при входе B - но затем возврат из B -> A работает нормально.
  • В качестве альтернативы, лучше ли как-то добавить B + C одновременно при переходе от A -> C, и если да, то как лучше всего это сделать, чтобы с обратным стеком тоже все было в порядке? Имея в виду, B не должен быть видимым, поэтому визуально он анимируется от A -> C.
  • Иначе, есть ли идеи по добавлению фрагмента в стек при возвращении таким образом?
И нет, Compose не вариант.

Подробнее здесь: https://stackoverflow.com/questions/798 ... insert-a-n
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»