我有一个简单的底部导航标签栏。现在我需要管理片段的后台堆栈,例如:- 如果片段已经初始化,那么它应该在切换到其他选项卡时保持它的状态,同样我遇到了 this 问题。所以现在我已经看到并使用了他们在 Advance Sample 中所做的工作。但是现在我对如何将一些数据传递到我的第一个选项卡(即我的第一个 Start destination
的 navGraph
)感到困惑。 ?
仅供参考,这是他们如何提供管理后台堆栈的解决方法:-
private fun setupBottomNavigationBar() {
val bottomNavigationView = findViewById<BottomNavigationView>(R.id.bottom_nav)
val navGraphIds = listOf(R.navigation.home, R.navigation.list, R.navigation.form)
// Setup the bottom navigation view with a list of navigation graphs
val controller = bottomNavigationView.setupWithNavController(
navGraphIds = navGraphIds,
fragmentManager = supportFragmentManager,
containerId = R.id.nav_host_container,
intent = intent
)
// Whenever the selected controller changes, setup the action bar.
controller.observe(this, Observer { navController ->
setupActionBarWithNavController(navController)
})
currentNavController = controller
}
现在每个选项卡都有不同的导航图,如果我这样做,如何将数据传递到我的第一个选项卡?
通常我会这样做:-
navController.setGraph(navGraph, args)
有类似的吗?