在我的项目中,我使用Google示例中的navigationextensions类“具有5种不同的导航图”来处理项目中的底部导航栏导航。
goolge范例:https://github.com/android/architecture-components-samples/tree/master/NavigationAdvancedSample。
我想导航到多个图中的片段A。
“现在我收到此错误:此NavController未知导航目标action_compareListFragment_to_productPageFragment”
logcat:
2019-11-26 10:34:02.502 6094-6094/com..app E/AndroidRuntime: FATAL EXCEPTION: main
Process: com..app, PID: 6094
java.lang.IllegalArgumentException: navigation destination com..app:id/action_compareListFragment_to_productPageFragment is unknown to this NavController
at androidx.navigation.NavController.navigate(NavController.java:863)
at androidx.navigation.NavController.navigate(NavController.java:804)
at androidx.navigation.NavController.navigate(NavController.java:790)
at com..app.views.home.accountPage.FavoriteFragment.onGoToProductClicked(FavoriteFragment.java:68)
at com..app.databinding.FavoriteListItemBindingImpl._internalCallbackOnClick(FavoriteListItemBindingImpl.java:365)
at com..app.generated.callback.OnClickListener.onClick(OnClickListener.java:11)
at android.view.View.performClick(View.java:6256)
at android.view.View$PerformClick.run(View.java:24701)
at android.os.Handler.handleCallback(Handler.java:789)
at android.os.Handler.dispatchMessage(Handler.java:98)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6541)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)
我应该如何处理这种情况?
如果有人帮助我,我将不胜感激。
答案 0 :(得分:3)
要在多个导航图中使用的片段在每个导航图中应具有相同的ID。另外,在每个图中,相同的片段应具有相同的片段参数和具有相同ID的相同操作。如果您不满足这些条件,导航组件将根本不会生成代码并且构建失败。