Компоненты навигации: Переключить меню Навигатора (для авторизованных пользователей) - PullRequest
0 голосов
/ 20 октября 2019

Я использую новую библиотеку компонентов навигации. У меня есть Навигационный ящик, который прекрасно работает.

Если мой пользователь входит в систему, я хочу изменить меню Навигационного окна. В частности, я хочу изменить элемент «Вход» на «Выход» из фрагмента.

Все решения, которые я нашел в Интернете, не использовали компоненты навигации. Поэтому они рекомендовали что-то вроде этого:

// Get the navigationView and swap the menu
NavigationView navigationView = view.findViewById(R.id.nav_view);
navigationView.getMenu().clear();
navigationView.inflateMenu(R.menu.activity_main_drawer_logged_in);

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

1 Ответ

1 голос
/ 20 октября 2019

Вы можете получить доступ к Деятельность из Фрагмент через интерфейс:

  1. Создать и интерфейс сказать LoginSuccessListener
  2. Реализует это в вашемActivity
  3. Внутри фрагмент получает этот слушатель внутри onAttach
  4. Используйте его, как вам нужно для обновления Navigation Menu
...