首页 > 解决方案 > 将参数传递给嵌套图的 startDestination

问题描述

我在单独的文件中创建了多个图表。

第一个是GraphA,它包括GraphB。GraphBstartDestinationFragmentB ,它有一个名为AnID的参数

现在我想将AnIDGraphA传递给GraphB ( FragmentB )

尽管编辑器知道该参数,但生成的代码不考虑该参数:

在此处输入图像描述

    val directionB = FragmentADirections.actionFragmentAToGraphB(/* HAS NOT ARGUMENT */)
    findNavController().navigate(directionB)

如何将参数传递给嵌套图?

标签: androidnavigationandroid-navigation-graph

解决方案


我发现了这个,但这不是官方的解决方案:

val direction = FragmentADirections.actionFragmentAToGraphB()
findNavController().navigate(direction.actionId, FragmentBArgs(anId).toBundle())
更新:

有人通过在行动中定义嵌套图参数引入了另一种方式


推荐阅读