Android 导航组件 - 错误:没有带 ID 的目的地

Android Navigation Component - error No destination with ID

提问人:Viacheslav Khailenko 提问时间:2/9/2022 最后编辑:Viacheslav Khailenko 更新时间:2/9/2022 访问量:1766

问:

我的导航组件有问题。

我有 2 个导航图:nav1 和 nav2

在 nav2 中,默认情况下起始目的地是 FragmentA,但有时我需要从 FragmentB 开始。我使用以下代码(MainActivity 中的此代码):

if(isTest) {
val navController = findNavController(navigationFragment())
val navGraph = navController.navInflater.inflate(R.navigation.nav)
navGraph.startDestination = R.id.fragmentB
findNavController(navigationFragment()).graph = navGraph
}

但是有这样的错误 -> java.lang.IllegalArgumentException: No destination with ID 2131362873 is on the NavController 的后台堆栈

NAV2代码在这里:

android:id="@+id/nav2"
app:startDestination="@id/FragmentA">
<fragment
android:id="@+id/FragmentA"
android:name="......./FragmentA"
android:label="FragmentA" />
<fragment
android:id="@+id/FragmentB"
android:name="......./FragmentB"
android:label="FragmentB" />

从 nav1 操作:

<action
android:id="@+id/action_global_link_test"
app:destination="@id/nav2"
app:enterAnim="@anim/enter_from_right"
app:exitAnim="@anim/exit_from_left"
app:popEnterAnim="@anim/enter_from_left"
app:popExitAnim="@anim/exit_from_right" />
Android Kotlin 导航

评论

0赞 Mobin Yardim 2/9/2022
您使用哪个版本的导航组件?
0赞 Viacheslav Khailenko 2/10/2022
你好。我使用 2.3.0-alpha05 版本
0赞 Mobin Yardim 2/10/2022
升级到 2.4.0 也许你的错误已修复

答: 暂无答案