Как мне перейти к месту назначения фрагмента в другой деятельности? - PullRequest
0 голосов
/ 10 октября 2018

Это моя первая попытка использования компонента навигации AndroidX, и я не могу найти ответ для этого сценария.У меня есть 2 вида деятельности: MainActivity и ShellActivity.MainActivity имеет панель навигации и настраиваемую панель инструментов (windowActionBar=false) и будет содержать некоторые фрагменты верхнего уровня.ShellActivity использует стандартную панель инструментов (windowActionBar=true) и будет содержать некоторые фрагменты более низкого уровня, такие как настройки, и некоторое содержимое типа detail .

Как настроить график навигации для выше иКак мне перейти от MainActivity/Fragment1 к ShellActivity/FragmentB?

Нужно ли просто настроить каждое действие как независимый граф и вызвать его с параметрами для загрузки желаемого фрагмента или есть собственно способ сделать это?

Почему действия настроены таким образом?

Поскольку фрагменты верхнего уровня могут перемещаться вперед и назад непосредственно через навигационную панель, тогда как низкиефрагменты уровня детализации не должны иметь доступа к блоку навигации (они являются вторичными пунктами назначения и не имеют смысла без фрагмента верхнего уровня, который ведет к ним).ShellActivity также имеет setDisplayHomeAsUpEnabled=true, что может противоречить работе ящика навигации.

Обновление

  1. Настройка ShellActivity как его собственногоГрафик невозможен, поскольку нет начального пункта назначения.
  2. Я также пытался переключать между панелью навигации и setDisplayHomeAsUp, но как только я включил setDisplayHomeAsUp, стрелка назадщелчки не вызывают никаких обратных вызовов.

Ответы [ 2 ]

0 голосов
/ 12 октября 2018

Как насчет всего одного упражнения со всеми необходимыми фрагментами?Вы можете обновить панель инструментов при переключении между фрагментами.

0 голосов
/ 10 октября 2018

Должен ли я просто настроить каждое действие в качестве независимого графа и вызвать его с параметрами для загрузки желаемого фрагмента или есть правильный способ сделать это?

Насколько яЯ обеспокоен - да

В любом случае, ваш подход звучит неправильно, - есть ли что-то в вашей бизнес-логике, которое заставило вас реализовать навигацию таким образом?(Если речь идет только о панели действий, я бы предложил переместить ее во фрагменты)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...