Переход к определенному фрагменту из любого места с сохранением backstack

#android

#Android

Вопрос:

Я обновляю старую навигационную систему из своего приложения на jetpack navigation и сталкиваюсь с проблемой:

Из диалогового фрагмента, который может отображаться практически из любого фрагмента в приложении, у меня есть кнопка, которая ведет к определенному фрагменту. Я нашел в документации глобальные действия, но, похоже, они очищают всю навигационную панель при навигации с помощью одного из них, и мне нужно сохранить свой backstack, просто добавьте к нему этот новый фрагмент из любого места. Каково решение этой проблемы?

Спасибо

Комментарии:

1. Если это приведет к определенному фрагменту, вы сможете перейти к этому фрагменту без каких-либо действий. NavController.navigate(R.id.yourfragment, bundle).

2. @KristyWelsh Отлично, спасибо, я думал, что создавать действия обязательно. Но без действия можно ли использовать анимацию между фрагментами?

3. то есть вы можете написать расширение kotlin (navcontroller) для этого.

4. Глобальные действия касаются области видимости — их можно вызывать из любого места в этом графике. Они не очищают задний стек, если вы специально не добавите popUpTo атрибуты для этого. Что заставляет вас думать, что они делают что-то другое, кроме того, что указано в действии?

5. @ianhanniballake Вы правы, я попробовал еще раз, и все работает так, как ожидалось. Вероятно, я проверил что-то не так. Спасибо