Gee*_*ngh 3 layout android menuitem android-studio
我正在尝试将菜单项添加到菜单组实际,但我发现无法做到这一点.我正在使用导航视图并添加下面提到的菜单:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/nav_lang_currency"
android:title="" />
<item
android:id="@+id/nav_home"
android:title="" />
<group android:id="@+id/nav_refer" />
<item
android:id="@+id/nav_setting"
android:title="" />
<item
android:id="@+id/nav_about_us"
android:title="" />
<item
android:id="@+id/nav_logout"
android:title="" />
</menu>
Run Code Online (Sandbox Code Playgroud)
如上所述,一切看起来都很好.
我只是想nav_refer
在运行时根据业务需求在组中添加多个菜单项,但我发现无法做到这一点.
我在SO上搜索了解决方案,却发现无法做到这一点.
请建议我如何在运行时添加组中的多个菜单项.
要将菜单添加到特定组,请调用此方法Menu.add(int groupId,int itemId,int order,CharSequence title)
Menu menu = navigationView.getMenu();
menu.add(R.id.nav_refer, 123, Menu.NONE, "Title1");
menu.add(R.id.nav_refer, 124, Menu.NONE, "Title2");
menu.add(R.id.nav_refer, 125, Menu.NONE, "Title3");
Run Code Online (Sandbox Code Playgroud)
重要提示:最初如果您有空组,则新添加的项目将显示在底部,要解决此问题,您需要提及组的订单.为您的所有群组添加属性android:orderInCategory="101"
你可以这样做:
NavigationView navView = (NavigationView) findViewById(R.id.navView);
Menu menu = navView.getMenu();
SubMenu subMenu = menu.addSubMenu("sub menu");
subMenu.add("item 1");
subMenu.add("item 2");
subMenu.add("item 3");
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
6475 次 |
最近记录: |