1

我正在研究导航组件架构,我在验证用户身份后遇到了如何设置起始目的地的问题,因为我有两种类型的用户:管理员和用户,我让我的应用程序包含 4 个活动 loginActivitysignUpActivity userMainActivity:使用导航组件并包含所有与用户相关的片段和adminMainActivity:使用导航组件并包含与管理员相关的所有片段

我无法弄清楚如何处理这个问题并在登录后按设置默认启动用户或管理员活动
我应该将用户和管理员放在单独的导航图中还是在这种情况下做什么

4

1 回答 1

0

您可以以编程方式设置起始目的地,就像:

val navHostFragment = nav_host_fragment as NavHostFragment
val graphInflater = navHostFragment.navController.navInflater
navGraph = graphInflater.inflate(R.navigation.nav_graph)
navController = navHostFragment.navController

val destination = if (intent.getBooleanExtra(IS_ADMIN,false))
R.id.adminhomeFragment 
  else R.id.userhomeFragment 
navGraph.startDestination = destination
navController.graph = navGraph
于 2020-07-05T10:36:34.377 回答