android - 无法弹出导航库的返回堆栈

标签 android android-architecture-navigation

我在使用导航库时弹出返回堆栈时遇到了一些问题。

我有以下流程

  • Secondary Graph FragSecondA -> FragSecondB

  • Main Graph FragMainA -> FragMainB -> FragMainC -> SecondaryGraph

  • I'd like to clear FragMainA, FragMainB, FragMainC from the back stack once I reach FragSecondA.

我尝试对导致二级图的操作使用设置 app:popUpTo="@id/fragment_main_c"app:popUpToInclusive="true"。使用我提到的代码只会从返回堆栈中弹出 FragMainC,让我导航回 FragMainB。我尝试设置 app:clearTask=true 以获得我想要的结果,但是这种方法已被弃用。

关于如何在不使用已弃用方法的情况下解决此问题,有没有人有任何建议?

最佳答案

尝试下面它应该工作。

编辑你的 action_fragMainC_to_secondaryGraph

            <action
            android:id="@+id/action_fragMainC_to_secondaryGraph"
            app:destination="@id/secondary_nav_graph"
            app:popUpTo="@+id/main_nav_graph" />

关于android - 无法弹出导航库的返回堆栈,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53431430/

相关文章:

android - 与来自 jetpack 的 Android 导航一起使用时,总是会重新创建 fragment

android - 如何在不使用 NavController 将其添加到 backstack 的情况下导航 fragment ?

android - 如何使用可能的待处理 Intent 从服务导航到导航 fragment ?

Android 复选框文字覆盖按钮

Android: fragment 之间跳转的正确方式

java - 通过低功耗蓝牙(即通过信标)向附近的移动设备发送通知,且设备上未安装任何应用程序

android - 导航架构组件 - 带有 lambda 表达式的 Action 导航

android - 无法找到 DialogFragment 中的 NavController

android - 按下后退按钮时删除 webview 文本区域中的字符

android - 让操作栏 "up navigation"触发dialogfragment