アプリで Bottom App Bar をナビゲーション コンポーネントとして使用しています。Navigation Drawer (下から表示される) のアイテムをクリックすると、Navigation Drawer が閉じられるはずですが、閉じられません。Navigation Drawer のナビゲーション アイテムをクリックすると、関連するフラグメントが開かれますが、(Bottom App Bar の) Navigation Drawer は引き続き表示されます。
DrawerLayout と drawerLayout.closeDrawer(Gravity.LEFT) を使用しようとしましたが、機能しません。
レイアウトは次のとおりです。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
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/drawerView"
android:layout_width="match_parent"
android:layout_height="match_parent">
<androidx.drawerlayout.widget.DrawerLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/drawerLayout"
tools:openDrawer="left">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.google.android.material.navigation.NavigationView
android:id="@+id/navigation_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:headerLayout="@layout/nav_header_layout"
app:menu="@menu/bottom_nav_drawer_menu" >
</com.google.android.material.navigation.NavigationView>
</RelativeLayout>
</androidx.drawerlayout.widget.DrawerLayout>
</RelativeLayout>
IDE がエラーを出すコード部分は次のとおりです。
navigation_view.setNavigationItemSelectedListener {
drawerLayout.closeDrawer(Gravity.LEFT)
...
return@setNavigationItemSelectedListener true
}
以下のエラーが発生します。
java.lang.IllegalArgumentException:重力が左にある引き出しビューが見つかりません
以下のリンクで解決策を試しましたが、うまくいきませんでした。