在抽屉布局的导航视图中的 header 和菜单之间创建分隔线

create divider between header and menu in navigationview for drawerlayout

对于 navigationview,我们可以通过将两个项目分成两组来在两个项目之间创建分隔线。但是我们如何在 header 和菜单之间创建分隔线呢?我试图在菜单顶部创建一个空组,但它不起作用。

navigationview的默认主题看起来很酷,但我喜欢黑白风格。但是当我无法在 header 和菜单(悲伤)

之间创建分隔线时,它看起来很尴尬

我不知道这样做的正确方法是什么,但我有一些解决方法:

  1. 如 P. Ilyin 所述,您可以将分隔线放在 header 视图的底部。

  2. 您可以将分隔线添加到 NavigationView 布局中,并手动调整分隔线的位置。

    示例:

    <android.support.design.widget.NavigationView
        android:id="@+id/navigation_view"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_gravity="start"
        app:headerLayout="@layout/drawer_menu_header"
        app:menu="@menu/menu_drawer">
    
        <View
            android:layout_width="match_parent"
            android:layout_height="1dp"
            android:background="@color/background_gray"
            android:layout_marginTop="140dp"/>
    
    </android.support.design.widget.NavigationView>
    

    在这种情况下,我们制作了一个高度为 1dp 的自定义灰线分隔线,它位于菜单下方 header(140dp 是该菜单的高度 header)。