【问题标题】:Can I use setupWithNavController and setOnNavigationItemSelectedListener at the same time我可以同时使用 setupWithNavController 和 setOnNavigationItemSelectedListener
【发布时间】:2019-08-23 21:58:07
【问题描述】:
我有一个带有 5 个项目和片段的 BottomNavigationView 活动来显示页面,我将 NavController 设置如下:
NavigationUI.setupWithNavController(mBottomNavigationView, navController);
但是在某些情况下底部导航中有一个项目会打开另一个活动。
我尝试添加 setOnNavigationItemSelectedListener 并处理它,但其他项目的导航不起作用。
谁能帮帮我?
【问题讨论】:
标签:
android
uinavigationcontroller
android-jetpack
android-jetpack-navigation
【解决方案1】:
使用 addOnDestinationChangedListener 代替 setOnNavigationItemSelectedListener。
navController.addOnDestinationChangedListener((controller, destination, arguments) -> {
if(destination.getId()==R.id.menu_item_id){
//navigate to other activity
}
});