飞道的博客

android navigation使用

469人阅读  评论(0)

android的navigation大部分情况是在xml进行配置,但是这样做不灵活,也可以采用在代码里面灵活跳转的方式

主要是通过NavGraph的setStartDestination方法。


  
  1. NavHostFragment navHostFragment = (NavHostFragment) getSupportFragmentManager().findFragmentById(R.id.main_view_nav_host_fragment);
  2. NavGraph navSimple = navHostFragment.getNavController().getNavInflater().inflate(R.navigation.main_navigation);
  3. if (getIntent().getBooleanExtra("jumpfromsettingactivity",false)){
  4. if (getIntent().getIntExtra("fragmentnum", 1) == 2) {
  5. navSimple.setStartDestination(R.id.connectionFailedWifiFragment);
  6. }
  7. }
  8. else {
  9. navSimple.setStartDestination(R.id.realTimeFragment);
  10. }
  11. navHostFragment.getNavController().setGraph(navSimple);

同时注意要去掉xml里面的app:navGraph

app:navGraph="@navigation/main_navigation"

和默认的startDestination

app:startDestination="@id/XXXFragment"


转载:https://blog.csdn.net/youngboo/article/details/106476686
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场