我遵循导航 UI 文档。( https://developer.android.com/guide/navigation/navigation-ui#add_a_navigation_drawer ) 用导航 UI 设置我的抽屉。
问题是,当点击设备的后退按钮时,当它转到上一页时抽屉仍然打开。
我希望它关闭抽屉并使用该事件,或者如果抽屉未打开返回上一页。
这是我的 navGraph,其中 homeFragment 包含抽屉布局

首页片段
<?xml version="1.0" encoding="utf-8"?>
<androidx.drawerlayout.widget.DrawerLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/drawerLayout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<!-- Layout to contain contents of main body of screen (drawer will slide over this) -->
<LinearLayout
...
<androidx.fragment.app.FragmentContainerView
android:id="@+id/nav_host_home"
android:name="androidx.navigation.fragment.NavHostFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:defaultNavHost="true"
app:navGraph="@navigation/nav_content" />
</LinearLayout>
<!-- Container for contents of drawer - use NavigationView to make configuration easier -->
<com.google.android.material.navigation.NavigationView
android:id="@+id/nav_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="start"
android:fitsSystemWindows="true"
app:headerLayout="@layout/nav_header_main"
app:itemIconTint="@color/colorLightBlue"
app:itemTextColor="@color/colorDarkBlue"
app:menu="@menu/menu_drawer"
android:layout_weight="1">
</androidx.drawerlayout.widget.DrawerLayout>
HomeFragment.kt 将 NavigationView (binding.navView) 与 navGraph nav_content 绑定
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
// bind the drawer with the navigation graph
val navHostFragment = childFragmentManager.findFragmentById(R.id.nav_host_home) as NavHostFragment
val navController = navHostFragment.navController
binding.drawerLayout.nav_view.setupWithNavController(navController)
binding.navView.setupWithNavController(navController)
nav_content nav Graph,homeFragment 的孩子

概括
我知道有mDrawerLayout.closeDrawers();
但是如果我在这些子片段之一中,找到父片段(主片段)并找到布局视图并关闭它会很痛苦。另外如何使用该返回事件?提前致谢
