在开发一个安卓程序中,如果我们想创建一个单activity的应用,但又需要多个页面的跳转,可以使用navigation+fragment+menu实现
navigation设置
创建一个navigation文件夹,新建my_nav的xml文件并设计布局
fragment设置
点击上方的手机加号图标创建new destination即可创建新的fragment
创建fragment之后,以自己需要的逻辑连接,便于页面的跳转
通过MainActivity启动fragments
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
setupActionBarWithNavController(findNavController(R.id.navHostFragment))
}
override fun onSupportNavigateUp(): Boolean {
val navController = findNavController(R.id.navHostFragment)
return navController.navigateUp() || super.onSupportNavigateUp()
}
}
Menu设置
和navigation创建方式相同,新建menu文件夹和各个fragment的menu文件