目前,我的底部导航中有三个选项和它们的导航图。
我的 mainActivity.xml 文件的一部分如下所示:
<fragment
android:id = "@+id/nav_host_fragment"
android:layout_width = "match_parent"
android:layout_height = "0dp"
android:layout_weight = "1"
android:name = "androidx.navigation.fragment.NavHostFragment"
app:navGraph = "@navigation/nav_graph"
app:defaultNavHost = "true" />
<com.google.android.material.bottomnavigation.BottomNavigationView
android:id = "@+id/bottom_nav"
android:layout_width = "match_parent"
android:layout_height = "wrap_content"
app:menu = "@menu/bottom_nav" />
在我的 mainActivity 中,我编写了这段代码,
navController = Navigation.findNavController(this, R.id.nav_host_fragment)
bottom_nav.setupWithNavController(navController)
NavigationUI.setupActionBarWithNavController(this, navController)
与导航相关的一切都由 jetpack 导航库处理。现在我还想添加一个导航抽屉,并且在抽屉中我想添加不同的菜单项(不仅仅是底部导航中的三个),所以我将为导航抽屉添加新的菜单资源文件,现在我应该如何使用导航库底部导航和导航抽屉?我不想手动执行片段事务并使用片段管理器。
我能想到的一种方法是将所有片段添加到单个导航图中(当前用于底部导航),然后也将相同的 navController 用于导航抽屉,但我正在寻找更好的方法。