Android导航组件返回栈

Ale*_*lex 5 android android-fragments kotlin fragment-backstack android-architecture-navigation

我创建了一个导航图,其中包含片段fragA->fragB->fragC-fragD->fragE->fragF->fragG。从某些推送通知中,用户必须直接使用 转到fragG findNavController().navigate(R.id.fragG),当用户点击后退按钮时,他必须转到fragF,但现在回到导航图的第一个片段,因为没有添加fragB->fragC-fragD->fragE->fragF到返回堆栈。当用户导航到最后一个按后退按钮时,可以将此片段添加到堆栈中吗?谢谢。

bei*_*rad 3

这不是官方答案,但它可以作为解决方法。

您可以通过按顺序导航来手动创建返回堆栈。

fun openGFromPushNotification(){
   navigate(R.id.fragB)
   navigate(R.id.fragC)
   navigate(R.id.fragD)
   navigate(R.id.fragE)
   navigate(R.id.fragF)
   navigate(R.id.fragG)
}
Run Code Online (Sandbox Code Playgroud)