Android Studio-无法从NavigationView中删除子菜单
我想从我的中删除属于我的一部分的特定组 我已经尝试使用在堆栈上找到的以下代码行删除组,但是它不起作用 1)。按ID删除组Android Studio-无法从NavigationView中删除子菜单,android,Android,我想从我的中删除属于我的一部分的特定组 我已经尝试使用在堆栈上找到的以下代码行删除组,但是它不起作用 1)。按ID删除组 NavigationView navigationView = (NavigationView)findViewById(R.id.nav_view); menu.removeGroup(R.id.myPagesGroup); menu.setGroupVisible(R.id.myPagesGroup, false); 2)。按ID设置可见性 NavigationVie
NavigationView navigationView = (NavigationView)findViewById(R.id.nav_view);
menu.removeGroup(R.id.myPagesGroup);
menu.setGroupVisible(R.id.myPagesGroup, false);
2)。按ID设置可见性
NavigationView navigationView = (NavigationView)findViewById(R.id.nav_view);
menu.removeGroup(R.id.myPagesGroup);
menu.setGroupVisible(R.id.myPagesGroup, false);
3)。从第一个组项目中查找子菜单,然后设置可见性
menu.findItem(R.id.nav_support).getSubMenu().setGroupVisible(R.id.myPagesGroup, false);
代码片段1和2没有给我错误,组只是可见
片段3给了我一个
但是,使用下面的代码删除项目确实有效
menu.removeItem(R.id.nav_calendar);
下面是实际的菜单
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<group
android:id="@+id/favoritesGroup"
android:checkableBehavior="single">
<item
android:id="@+id/nav_calendar"
android:icon="@mipmap/ic_calendar"
android:title="Kalender"/>
<item
android:id="@+id/menu_none"
android:title=""
android:visible="false"/>
<item
android:id="@+id/nav_availabilityList"
android:icon="@mipmap/ic_calendar"
android:title="Tillgänglighet"/>
<item
android:id="@+id/nav_available_jobs"
android:icon="@mipmap/ic_assignment"
android:title="Lediga Jobb"/>
<item
android:id="@+id/nav_my_contacts"
android:icon="@mipmap/ic_phone"
android:title="Kontakt"/>
<item
android:id="@+id/nav_contactSc"
android:visible="false"
android:icon="@mipmap/ic_phone"
android:title="Kontakt"/>
<item
android:id="@+id/nav_support"
android:icon="@mipmap/ic_phone"
android:title="Support"/>
</group>
<item android:title="Mina Sidor">
<menu>
<group
android:id="@+id/myPagesGroup"
android:checkableBehavior="single">
<item
android:id="@+id/nav_my_commissions"
android:icon="@mipmap/ic_commissions"
android:title="Mina Uppdrag"/>
<item
android:id="@+id/nav_commission_schedule"
android:icon="@mipmap/ic_commission_schedule"
android:title="Uppdragsschema"/>
<item
android:id="@+id/nav_vacation"
android:icon="@mipmap/ic_vacation_application"
android:title="Semesteransökan"/>
<item
android:id="@+id/nav_employment_terms"
android:icon="@mipmap/ic_employment_terms"
android:title="Anställningsvillkor"/>
<item
android:id="@+id/nav_document"
android:icon="@mipmap/ic_document"
android:title="Dokument"/>
<item
android:id="@+id/nav_consultant_agent"
android:icon="@mipmap/ic_consultant_agent"
android:title="Konsultombud"/>
<item
android:id="@+id/nav_file_upload"
android:icon="@mipmap/ic_file_upload"
android:title="Ladda upp intyg"/>
<item
android:id="@+id/nav_my_tests"
android:icon="@mipmap/ic_tests"
android:title="Mina tester"/>
<item
android:id="@+id/nav_matching_jobs"
android:icon="@mipmap/ic_matching_jobs"
android:title="Matchande jobb"/>
<item
android:id="@+id/nav_my_applications"
android:icon="@mipmap/ic_applications"
android:title="Mina ansökningar"/>
<item
android:id="@+id/nav_my_profile"
android:icon="@mipmap/ic_profile"
android:title="Min profil"/>
</group>
</menu>
</item>
<item android:title="Övrigt">
<menu>
<group
android:id="@+id/generalGroup"
android:checkableBehavior="single">
<item
android:id="@+id/nav_looking_for_job"
android:icon="@mipmap/ic_assignment"
android:title="Söker du jobb?"/>
<item
android:id="@+id/nav_looking_for_personel"
android:icon="@mipmap/ic_people"
android:title="Söker du personal?"/>
<item
android:id="@+id/nav_about_us"
android:icon="@mipmap/ic_office"
android:title="Om oss"/>
<item
android:id="@+id/nav_logout"
android:icon="@mipmap/ic_phone"
android:title="Logga ut"/>
</group>
</menu>
</item>
</menu>
你试过这个吗
Menu nav_Menu = navigationView.getMenu();
nav_Menu.findItem(R.id.myPagesGroup).setVisible(false);
和团体
navigationView.getMenu().setGroupVisible(R.id.myPagesGroup, false);
第一个解决方案给了我一个空指针异常,第二个解决方案没有给我一个错误,但它不会使组不可见。因为第一个解决方案是针对单个项目的。是的,我用那个解决方案删除单个项目,效果很好,但我无法从我尝试的方法中删除组。然而,我只是做了一个单独的菜单,称为menu.clear();和navigationView.inflateMenu(r.menu.myMenu);您试图删除的菜单是从导航视图中删除的?我试图删除id为“myPageGroup”的菜单中的组,该菜单是导航视图的一部分,它是我抽屉布局的一部分