Восстановление состояний пунктов меню из пользовательского BottomNavigationView с помощью Jetpack NavigationAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Восстановление состояний пунктов меню из пользовательского BottomNavigationView с помощью Jetpack Navigation

Сообщение Anonymous »

Как настроить с помощью NavController пользовательский BottomNavigationView со вставкой FloatingActionButton (FAB)?
Изображение

В соответствии с Jetpack Navigation…

Начало в навигации 2.4.0-alpha01 состояние каждого пункта меню
сохраняется и восстанавливается при использовании setupWithNavController.

Это работает просто чудесно, однако, когда я настраиваю BottomNavigationView и нажимаю FAB, состояния текущих пунктов меню перезагружаются. Как я могу добиться такого же поведения при нажатии на любой пункт меню с помощью FAB?

Код: Выделить всё

binding.activityMainBottomNavigationView.setupWithNavController(navController)

binding.activityMainFloatingActionButton.setOnClickListener {

// TODO: Fix navigation.
navController.navigate(R.id.homeFragment)

binding.activityMainBottomNavigationView.selectedItemId = R.id.homeFragment
}
Насколько я понимаю, вызов navController.navigate() может сбрасывать текущий nav_graph, используемый фрагментомContainerView, и поэтому текущие пункты меню перезагружаются. Есть ли способ избежать этого?


Подробнее здесь: https://stackoverflow.com/questions/687 ... ck-navigat
Ответить

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

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

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

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

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