【发布时间】:2021-06-10 16:48:32
【问题描述】:
每当我单击导航视图中的菜单项时,都不会出现重力 LEFT 的抽屉视图。我正在使用自定义应用栏。我正在使用 openDrawer 和 closeDrawer 函数。下面我粘贴代码请帮助我坚持一周。
property.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".views.enforcement.PropertyActivity">
<include
android:id="@+id/header"
layout="@layout/property_header" />
<androidx.drawerlayout.widget.DrawerLayout
android:id="@+id/drawerLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:openDrawer="end">
<fragment
android:id="@+id/fragmentContainerView"
android:name="androidx.navigation.fragment.NavHostFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:defaultNavHost="true"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:navGraph="@navigation/property_nav" />
<com.google.android.material.navigation.NavigationView
android:id="@+id/navigationView"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="end"
android:background="@color/white"
app:itemBackground="@color/white"
app:itemIconTint="@color/color_light_blue"
app:itemTextColor="@color/color_light_blue"
app:menu="@menu/drawer_menu" />
</androidx.drawerlayout.widget.DrawerLayout>
</LinearLayout>
property.class
private fun initView() {
navController = findNavController(R.id.fragmentContainerView)
mDrawerLayout = findViewById<DrawerLayout>(R.id.drawerLayout)
navigationView.setupWithNavController(navController)
binding.header.menuIV.setOnClickListener {
if (mDrawerLayout.isDrawerOpen(GravityCompat.END)) {
mDrawerLayout.closeDrawers()
} else {
mDrawerLayout.openDrawer(GravityCompat.END)
}
}
【问题讨论】:
-
您是想让导航抽屉从左侧打开还是从右侧打开?
-
从右边尝试
-
让我知道它是否有效
标签: android uinavigationcontroller drawerlayout