我可以同时使用 setupWithNavController 和 setOnNavigationItemSelectedListener
Can I use setupWithNavController and setOnNavigationItemSelectedListener at the same time
我有一个带有 BottomNavigationView 的 activity,其中包含 5 个项目和用于显示页面的片段,我将 NavController 设置如下:
NavigationUI.setupWithNavController(mBottomNavigationView, navController);
但在某些情况下底部导航中有一项会打开另一项activity。
我尝试添加 setOnNavigationItemSelectedListener 并对其进行处理,但是其他项目的导航不起作用。
谁能帮帮我?
使用 addOnDestinationChangedListener 而不是 setOnNavigationItemSelectedListener。
navController.addOnDestinationChangedListener((controller, destination, arguments) -> {
if(destination.getId()==R.id.menu_item_id){
//navigate to other activity
}
});
我有一个带有 BottomNavigationView 的 activity,其中包含 5 个项目和用于显示页面的片段,我将 NavController 设置如下: NavigationUI.setupWithNavController(mBottomNavigationView, navController);
但在某些情况下底部导航中有一项会打开另一项activity。
我尝试添加 setOnNavigationItemSelectedListener 并对其进行处理,但是其他项目的导航不起作用。
谁能帮帮我?
使用 addOnDestinationChangedListener 而不是 setOnNavigationItemSelectedListener。
navController.addOnDestinationChangedListener((controller, destination, arguments) -> {
if(destination.getId()==R.id.menu_item_id){
//navigate to other activity
}
});