Navigation
Navigation 是jectpack提供的导航工具,最近公司项目架构调整使用这个现成的工具,工具最直接的是把界面切换方式限定为replace,也就是切换到下一个界面的时候说会重走生命周期,会有initview这个阶段,所以如果界面有大量的视图需要刷新这种方式会有些卡顿,或者说是资源消耗严重,如果要求对资源使用特别高的app这种方式需要认真考虑,一定要注意这一点。
使用方式:
Navigation.findNavController(NavigationActivity.this,R.id.nav_host_fragment)
//导航
.navigate(R.id.xxFragment);
界面跳转可以附带bundle进行数据的传递:
Navigation.findNavController(NavigationActivity.this,R.id.nav_host_fragment)
//导航
.navigate(R.id.xxFragment,budle);```
这里的id既支持目标的id也支持action的id.
目标id或者actionid需要在navigation的导航xml里设置;
时间有限,下一篇介绍怎么引入navigation到anroid工程。