我可以同时使用 setupWithNavController 和 setOnNavigationItemSelectedListener

moh*_*eed 4 android uinavigationcontroller android-jetpack android-jetpack-navigation

我有一个带有 5 个项目和片段的 BottomNavigationView 活动来显示页面,我将 NavController 设置如下:NavigationUI.setupWithNavController(mBottomNavigationView, navController);

但在某些场景中底部导航中有一个项目会打开另一个活动。

我尝试添加 setOnNavigationItemSelectedListener 并处理它,但是其他项目的导航不起作用。

谁能帮我 ?

小智 8

使用 addOnDestinationChangedListener 代替 setOnNavigationItemSelectedListener。 navController.addOnDestinationChangedListener((controller, destination, arguments) -> { if(destination.getId()==R.id.menu_item_id){ //navigate to other activity } });