Android 3.2 正式リリース && Androidx 1.0 おめでとうございます🎊
さて、 Android Studio 3.2 から入ってきた Navigation Architecture Component (NAC)
NAC には BottomNavigationView (and DrawerView?) と紐づけ、Fragment の ID と menu の id を一緒にすることで タップした時によしなにナビゲーションしてくれる機能があります。
https://willowtreeapps.com/ideas/exploring-androids-navigation-architecture-component
また、NAC の中には、 他のNavigation Graph を include する機能があります。
そんな状況でNavigation できるようにする方法について書いていきます。
課題点
ドキュメント等には、 Root Navigation Graph の中にある Fragment と BottonnavigationView を紐づける方法について書いてはあっても Include したやつと 紐づける方法については書いてない
解決策
Include された Navigation Graph の @+id?hoge を menu の ID と同じにすればおk
<navigation xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" **android:id="@+id/huge"** app:startDestination="@id/hoge> // many Fragments </navigation>