Android导航组件回栈

标签 android android-fragments kotlin android-architecture-navigation fragment-backstack

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

最佳答案

这不是官方答案,但它可以作为一种解决方法。
您可以通过顺序导航来手动创建后台堆栈。

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)
}

关于Android导航组件回栈,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61997484/

相关文章:

Android fragment 相互重叠

java - 不推荐使用 findPreference() 方法? - 安卓

Kotlin:必须初始化变量 'result'

android - 来自不同上下文的 StartActivity

android - 在 Retrofit 2 中传递 API key - Android Studio

android - Android 应用程序的图像大小

android - 使用 PagingDataAdapter 时如何恢复 recyclerview 滚动位置?

android - Material 日期范围选择器显示不正确的当前日期Android

java - 更改屏幕 fragment 后崩溃

android - CORDOVA 11 Android 构建失败 : Unresolved reference: FireBaseInstanceId