NavigationView: how to insert divider without subgroup?

Android-developer picture Android-developer · Jun 2, 2015 · Viewed 14.3k times · Source

How I can put a divider without title Subgroup in the new NavigationView?

<?xml version="1.0" encoding="utf-8"?>

<menu xmlns:android="http://schemas.android.com/apk/res/android">


<group android:checkableBehavior="single">
    <item
        android:id="@+id/drawer_armario"
        android:icon="@drawable/armario"
        android:title="@string/armario"  />
    <item
        android:id="@+id/drawer_amigos"
        android:icon="@drawable/amigos"
        android:title="@string/amigos" />

</group>

<item android:title="Configuración">
    <menu>
        <item

            android:id="@+id/drawer_ajustes"
            android:icon="@drawable/ajustes"
            android:title="@string/ajustes" />
        <item
            android:id="@+id/drawer_ayuda"
            android:icon="@drawable/ayuda"
            android:title="@string/ayuda" />
        <item
            android:id="@+id/drawer_sign_out"
            android:icon="@drawable/sign_out"
            android:title="@string/sign_out" />

    </menu>

</item>

I would like to put a line beetween amigos and ajustes items without Configuración title.

Thanks!!!

Answer

Jin picture Jin · Jun 2, 2015

All you need to do is define a group with an unique ID. I looked through NavigationView's implementation, and it will create a divider every time the group id is changed.

e.g.

<group android:id="@+id/my_id">
    <!-- Divider will appear above this item -->
    <item ... />
</group>