NavigationUI对3种类型的App bar提供了支持,分别是ActionBar、Toolbar和CollapstingToolbarLayout。另外,除了最常见的menu菜单,NavigationUI还可以配合App bar左侧的抽屉菜单(DrawLayout+NavigationView)和底部菜单(BottomNavigationView)。
现在需要实现以下功能:有MainFragment和SecondFragment,这两个Fragment同属于NavigationTestMainActivity。在MainFragment的ActionBar有一个按钮,点击按钮跳转到SecondFragment,之后点击SecondFragment的ActionBar上的返回按钮,返回到MainFragment。
修改Android_Jetpack:Navigation初见以及使用safe args插件传递参数项目中的代码。
首先在res目录下添加menu目录,之后新建menu_main_fragment.xml
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@id/secondFragment"
android:title="跳转到Second"
android:icon="@drawable/ic_launcher_foreground"/>
</menu>
这里需要注意的是,android:id要与nav_graph导航图中SecondFragment的id要一致,因为当这个item被点击时,将会跳转到id所对应的Fragment。
在NavigationTestMainActivity中实例化这个菜单。