导航抽屉:样式子菜单/标题

时间:2016-03-01 17:31:58

标签: android xml navigation-drawer material-design android-navigationview

我正试图在google的规格之后设置导航抽屉的样式。但我无法得到这个红色标记的子菜单:

Src : [google](https://material-design.storage.googleapis.com/publish/material_v_4/material_ext_publish/0Bzhp5Z4wHba3RkZGRGhaM3c5ZDg/patterns_navdrawer_metrics1.png)

这是我目前的菜单结构。我通过将分割器分成几组来获得分隔符,但是我没有获得子菜单的标题。

this Undefined index:

xml中是否有解决方案,还是可以通过编程方式完成?两者都没问题。

2 个答案:

答案 0 :(得分:1)

你需要一个类似于这个的xml:

<group android:id="@+id/some_group_id">
    <item android:id="@+id/some_item_id"
        android:title="Subheader">
        <menu>
            <item
                android:id="@+id/item_id_1"
                android:icon="@drawable/mail"
                android:title="@string/all_mail" />

            <item
                android:id="@+id/item_id_2"
                android:icon="@drawable/trash"
                android:title="@string/trash" />

            <item
                android:id="@+id/item_id_3"
                android:icon="@drawable/spam"
                android:title="@string/spam" />
        </menu>
    </item>
</group>

创建一个组并向其中添加一个项目。项目的标题是决定你想要的子标题的标题。然后,您可以将带有项目的常规菜单添加到子标题项。

答案 1 :(得分:0)

@kingdonnaz的答案正在发挥作用。但在我的情况下,我正在动态编辑菜单,所以我的解决方案是在代码中添加子菜单:

SubMenu subMenu = menu.addSubMenu(R.id.second_group, 1, 0, "Submenutitel");

subMenu.add(R.id.second_group, s, 1, "GROUP1").setIcon(R.drawabel.ic_test);