如何在MaterialDrawer中每行有多个项目?

时间:2019-07-07 18:51:37

标签: android materialdrawer

我正在使用强大的库MaterialDrawer向我的应用添加导航抽屉。到目前为止,它运行良好,但是我想知道是否有一种方法可以在每行中添加多个项目。例如,要显示多个相关设置,可以切换。

我浏览了Github上的图书馆文档和问题跟踪器,但找不到任何相关内容。

1 个答案:

答案 0 :(得分:0)

可以在NavigationView的{​​{1}}内创建自己的自定义布局。例如,以下代码有4行,每行3个项目。

DrawerLayout

<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/drawer_layout" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true" tools:openDrawer="start"> <android.support.design.widget.NavigationView android:id="@+id/nav_view" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#AAFFAA" android:fitsSystemWindows="false" android:layout_gravity="end"> <GridLayout android:columnCount="3" android:rowCount="4" android:layout_width="match_parent" android:layout_height="match_parent" android:columnOrderPreserved="true" android:rowOrderPreserved="true"> <TextView android:layout_columnWeight="1" android:layout_rowWeight="1" android:layout_gravity="fill_horizontal" android:gravity="center" android:textSize="18sp" android:text="sin"/> <TextView android:layout_columnWeight="1" android:layout_rowWeight="1" android:layout_gravity="fill_horizontal" android:gravity="center" android:textSize="18sp" android:text="cos"/> <TextView android:layout_columnWeight="1" android:layout_rowWeight="1" android:layout_gravity="fill_horizontal" android:gravity="center" android:textSize="18sp" android:text="tan"/> <TextView android:layout_columnWeight="1" android:layout_rowWeight="1" android:layout_gravity="fill_horizontal" android:gravity="center" android:textSize="18sp" android:text="ln"/> <TextView android:layout_columnWeight="1" android:layout_rowWeight="1" android:layout_gravity="fill_horizontal" android:gravity="center" android:textSize="18sp" android:text="log"/> <TextView android:layout_columnWeight="1" android:layout_rowWeight="1" android:layout_gravity="fill_horizontal" android:gravity="center" android:textSize="18sp" android:text="!"/> <TextView android:layout_columnWeight="1" android:layout_rowWeight="1" android:layout_gravity="fill_horizontal" android:gravity="center" android:textSize="18sp" android:text="\u03c0"/> <TextView android:layout_columnWeight="1" android:layout_rowWeight="1" android:layout_gravity="fill_horizontal" android:gravity="center" android:textSize="18sp" android:text="e"/> <TextView android:layout_columnWeight="1" android:layout_rowWeight="1" android:layout_gravity="fill_horizontal" android:gravity="center" android:textSize="18sp" android:text="^"/> <TextView android:layout_columnWeight="1" android:layout_rowWeight="1" android:layout_gravity="fill_horizontal" android:gravity="center" android:textSize="18sp" android:text="("/> <TextView android:layout_columnWeight="1" android:layout_rowWeight="1" android:layout_gravity="fill_horizontal" android:gravity="center" android:textSize="18sp" android:text=")"/> <TextView android:layout_columnWeight="1" android:layout_rowWeight="1" android:layout_gravity="fill_horizontal" android:gravity="center" android:textSize="18sp" android:text="\u221a"/> </GridLayout> </android.support.design.widget.NavigationView> </android.support.v4.widget.DrawerLayout> documentation确实声明可以使用Custom DrawerLayout Implementation,但是我以前从未做过,所以我无法在此处提供示例。片刻。