如何通过管理片段返回堆栈在导航组件中传递参数

时间:2021-03-09 18:18:39

标签: android android-architecture-components android-architecture-navigation

我有一个简单的底部导航标签栏。现在我需要管理片段的后台堆栈,例如:- 如果片段已经初始化,那么它应该在切换到其他选项卡时保持它的状态,同样我遇到了 this 问题。所以现在我已经看到并使用了他们在 Advance Sample 中所做的工作。但是现在我对如何将一些数据传递到我的第一个选项卡(即我的第一个 Start destinationnavGraph)感到困惑。 ?

仅供参考,这是他们如何提供管理后台堆栈的解决方法:-

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)

有类似的吗?

0 个答案:

没有答案