无法弹出导航库的后退堆栈

时间:2018-11-22 12:49:51

标签: android android-architecture-navigation

使用导航库时,在弹出后堆栈时遇到一些麻烦。

我有以下流程

  
      
  • 二级图FragSecondA-> FragSecondB

  •   
  • 主图FragMainA-> FragMainB-> FragMainC-> SecondaryGraph

  •   
  • 我想在到达FragSecondA后从后堆栈中清除FragMainA,FragMainB,FragMainC。

  •   

我尝试在导致次要图表的操作上使用设置app:popUpTo="@id/fragment_main_c" app:popUpToInclusive="true"。使用我提到的代码只会从后堆栈中弹出FragMainC,而让我导航回到FragMainB。我尝试设置app:clearTask=true可以得到理想的结果,但是此方法已弃用。

有人在不使用不推荐使用的方法的情况下如何解决此问题有任何建议吗?

1 个答案:

答案 0 :(得分:1)

在下面尝试它应该可以工作。

编辑您的action_fragMainC_to_secondaryGraph

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