Я использую Android Компонент навигации. Я хочу сделать нижнюю навигационную панель и панель инструментов / панель приложений. поэтому я установил нижнюю навигацию в моем MainActivity
, используя этот код
bottom_nav.setupWithNavController(navController)
, скажем, у меня есть 3 меню в нижней навигации: Домой, Поиск, Профиль
, поэтому я хочу, чтобы мой HomeFragment
, SearchFragment
и ProfileFragment
как root (верхняя иерархия) в стеке навигации.
, если пользователь коснется Home Menu, отобразится список ресторанов. и если я щелкну на Предмете, то он перейдет к RestaurantDetailFragment
, поэтому HomeFragment
---> RestaurantDetailFragment
здесь проблема. когда я возвращаюсь с RestaurantDetailFragment
на HomeFragment
, на моей панели инструментов есть кнопка возврата. поскольку Home - это root, я ожидаю, что на моей панели инструментов нет кнопки "назад".
- вот способ установки панели инструментов ....
Я устанавливаю панель инструментов в каждом фрагменте макет, а не только сделать одну панель инструментов в MyMainActivity. Я определяю необходимые панели инструментов в макетах фрагментов. Затем в каждом фрагменте onCreateView
я устанавливаю код следующим образом:
(activity as AppCompatActivity).setSupportActionBar(toolbar)
toolbar.setNavigationOnClickListener { view ->
view.findNavController().navigateUp()
}
как сделать мои HomeFragment
, SearchFragment
и ProfileFragment
в качестве root (верхняя иерархия) в навигации стек, чтобы кнопка «Назад» не появлялась на их панели инструментов?