我有一个带有recyclerview和导航抽屉的活动。
当抽屉在回收站视图的前面并且我打开它时,它仍然出现在所有东西的后面。
但是当抽屉在recyclerview的后面时,recyclerview没有任何输入,并且抽屉工作正常。
<?xml version="1.0" encoding="utf-8"?>
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:fitsSystemWindows="true">
<android.support.v4.widget.DrawerLayout
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<FrameLayout
android:id="@+id/content_frame"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<android.support.design.widget.NavigationView
android:id="@+id/nav_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
android:fitsSystemWindows="true" />
</android.support.v4.widget.DrawerLayout>
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_above="@id/footer"
android:layout_below="@id/header">
<android.support.v7.widget.RecyclerView
android:id="@+id/recycler"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true" />
</RelativeLayout>
<RelativeLayout
android:id="@+id/header"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<include
android:id="@+id/toolbar"
layout="@layout/toolbar" />
</RelativeLayout>
答案 0 :(得分:0)
您需要检查视图的elevation
属性。这样一来,视图就可以更改其z
的位置,以便将其绘制在其他视图之上,并且即使位于视图层次结构的下方,也可以投影。
您的recyclerView项目似乎使用cardView
,其默认标高为4dp
,而navigationDrawer较少(我认为2dp
?)。
答案 1 :(得分:0)
所以我已经解决了这个问题,当您在项目中添加一个抽屉式布局时,您需要将之前活动中的所有内容都放入content_frame中,否则它将把抽屉当做是普通的元素,并在其后面添加了输入。
https://developer.android.com/training/implementing-navigation/nav-drawer