Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何使导航栏的某个项目不';你不能给我一块碎片吗?_Android_Navigation_Navigationbar - Fatal编程技术网

Android 如何使导航栏的某个项目不';你不能给我一块碎片吗?

Android 如何使导航栏的某个项目不';你不能给我一块碎片吗?,android,navigation,navigationbar,Android,Navigation,Navigationbar,当您在Android Studio提供的底部导航栏中选择一个项目时,它会显示一个片段。我想做一个注销项目,当你选择它时,它会调用一个方法,但实际上不会给我带来一个片段 我知道NavigationUI设置了导航栏的所有配置,所以当我尝试实现navController.addOnDestinationChangedListener()并将我的操作添加到注销项目时,我认为这会覆盖导航配置,我无法在项目上导航 我是否必须自己配置并在每个项目上添加侦听器 我还希望在您单击注销项目时出现确认对话框时,如果您

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

我知道NavigationUI设置了导航栏的所有配置,所以当我尝试实现navController.addOnDestinationChangedListener()并将我的操作添加到注销项目时,我认为这会覆盖导航配置,我无法在项目上导航

我是否必须自己配置并在每个项目上添加侦听器


我还希望在您单击注销项目时出现确认对话框时,如果您选择“取消”,它会将您返回到以前的状态(例如:我在主片段中,如果我单击注销项目,我取消它,它会将我返回主片段)

您可以启用/禁用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)
你可以查看这篇文章