【问题标题】:popUpTo & popUpToInclusive not working Android Navigation ComponentspopUpTo 和 popUpToInclusive 不起作用 Android 导航组件
【发布时间】:2020-10-10 11:46:56
【问题描述】:

我正在使用导航组件在片段之间导航。 A 是 startDestination,B 是 home 片段。从A我可以到B,从B我可以去C、D、E等等。我在片段 B 中添加了一个全局动作。因为起始目的地是 A,所以它在应用程序启动时启动。我正在使用全局操作对片段 B 进行从 A 导航到 B 的导航,并且我不希望片段位于后台堆栈上,但是当我从 B 回压时 A 会显示出来。

这是对 B 的全局操作:

<action
    android:id="@+id/action_global_to_B"
    app:destination="@id/B"
    app:popUpTo="@id/B"
    app:popUpToInclusive="true"/>

所以你可以看到我对全局操作做了 popUpTo 和 popUpToInclusive。但我仍然看到片段 A 仍在后台堆栈中。

然后我尝试了这个:

<fragment
android:id="@+id/A"
android:name="com.xx.A"
android:label="A" >
<action
    android:id="@+id/action_A_to_B"
    app:destination="@id/B"
    app:popUpTo="@id/B"
    app:popUpToInclusive="true"/>
</fragment>

还是同样的问题。

【问题讨论】:

    标签: android android-fragments android-jetpack android-jetpack-navigation


    【解决方案1】:

    这样做:

    <fragment android:id="@+id/A"
              android:name="com.xx.A"
              android:label="A">
        <action
            android:id="@+id/action_A_to_B"
            app:destination="@id/B"
            app:popUpTo="@id/A"
            app:popUpToInclusive="true"/>
    </fragment>
    

    【讨论】:

      猜你喜欢
      • 2020-10-29
      • 2019-09-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-07
      • 2020-06-23
      • 1970-01-01
      相关资源
      最近更新 更多