我用NavigationView创建了一个DrawerLayout。 navigationView在xml文件中定义如下:
<android.support.design.widget.NavigationView
android:id="@+id/nav_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
app:headerLayout="@layout/header_main"
app:itemTextAppearance="@style/NavigationDrawerStyle"
tools:visibility="visible">
<include layout="@layout/menu_item_main" />
</android.support.design.widget.NavigationView>
我没有定义app:menu ----,而是定义了一个单独的布局,直到列表中的项目数量很少才能正常工作。一旦它更多,我在menu_item_main中添加了一个可滚动的布局,尝试覆盖scrollView中的NavigationView。似乎没有什么对我有用。
我知道使用菜单屏幕可以解决问题,但应用程序的逻辑取决于布局的存在而无法改变它。有没有人知道如何在不使用app:menu的情况下使列表中的菜单项可滚动?
菜单布局文件如下所示:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/nav_height"
android:orientation="vertical">
<LinearLayout
android:id="@+id/home"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<ImageView
android:id="@+id/home_icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="4dp"
android:gravity="center_vertical"
android:src="@drawable/home_unselected" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="4dp"
android:gravity="center_vertical"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="@string/home_item_text"
android:textSize="@dimen/textSize_medium" />
</LinearLayout>
</LinearLayout>
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="@android:color/darker_gray" />
<LinearLayout
android:id="@+id/nav_identify"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<ImageView
android:id="@+id/nav_identify_icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="4dp"
android:gravity="center_vertical"
android:src="@drawable/closure_unselected" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="4dp"
android:gravity="center_vertical"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/identify_item_text"
android:textSize="@dimen/textSize_medium" />
</LinearLayout>
</LinearLayout>
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="@android:color/darker_gray" />
</LinearLayout>