如何使导航底栏的某个项目不会给我带来碎片?

时间:2019-10-15 22:27:09

标签: android navigation navigationbar

当您在Android Studio提供的底部导航栏中选择一个项目时,它将显示一个片段。我要制作一个注销项目,当您选择它时,它会调用一个方法,但实际上并不会带来碎片。

我了解到NavigationUI设置了导航栏的所有配置,因此当我尝试实现 navController.addOnDestinationChangedListener()并将我的操作添加到我的注销项时,我认为这将覆盖导航栏配置,我只是无法浏览这些项目

我需要自己配置并在每个项目上添加一个侦听器吗?

我还想确保当您单击注销项时出现确认对话框时,如果您选择取消,它将使您返回到以前的状态(例如:如果我单击注销项,则我处于Home片段中,并且我取消了它,它使我回到了Home片段)

1 个答案:

答案 0 :(得分:0)

您可以在NavigationView中启用/禁用任何菜单项...

NavigationView navigationView= findViewById(R.id.nav_id_in_layout)

Menu menuNav=navigationView.getMenu();
MenuItem nav_item2 = menuNav.findItem(R.id.nav_item2);
nav_item2.setEnabled(false)