如何使导航到片段后,无法再使用后退按钮导航到最后一个片段?

Shan

我有一个像这样的导航结构:

StaringFragment -> nestedNavGraph
                         |
                   HomeFragment -> SecondFragment

我需要让这个用户导航离开后StartingFragmentnestedNavGraph用户可以不再打后退按钮返回StartingFragment

我基本上是在执行权限检查,如果检查成功,我会使用以下代码从 导航StartingFragmentnestedNavGraph

findNavController(R.id.nav_host_frag).navigate(R.id.nestedNavGraph)

然后,在StartingFrag -> nestedNavGraph导航图编辑器中的之间的操作箭头上,我设置popUpToHomeFragment和包含为true我误解了文档吗?

StartingFragment一旦我离开它从 backstack 中删除它的正确方法是什么?

安汉尼巴拉克

根据文档,您设置app:popUpTo为要弹出的目的地 - 您不想弹出 HomeFragment,而是希望弹出起始片段,因此您应该将您app:popUpTo设置为起始片段的 ID。

请注意,根据Navigation原则,您应该始终有一个固定的起始目的地 - 您不应该使用开始目的地进行条件导航- Navigation 中的许多 API,例如 NavigationUI,都假设您正确地遵循了原则导航,并且您的图表的起始目的地保留在您的后堆栈中。

请记住,Android 将在返回您的 Activity(例如,在用户手动撤销您请求的权限之后)恢复您的状态(包括您所在的 Fragment) - 您的 Fragment 本身(或者如果该权限确实是全局的,则为 Activity在整个应用程序的每个屏幕上都需要)应该始终检查权限 - 你不能依赖你的开始片段总是被调用。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何从下一个片段导航到最后一个弹出的片段?

来自分类Dev

在导航到另一个片段并使用Kotlin中的“后退”按钮返回后,为什么片段中的EditText显示相同的值?

来自分类Dev

片段导航无法与ActionBar上的“后退”按钮一起使用,对于实体按钮来说也可以

来自分类Dev

使用导航控制器按下后退按钮后,如何防止之前的片段出现?

来自分类Dev

无法从具有列表视图的片段导航到另一个片段

来自分类Dev

带片段的后退按钮导航

来自分类Dev

使用NavController从片段导航到另一个片段

来自分类Dev

如何使用导航从bottomsheetdialog导航到片段?

来自分类Dev

如何从一个活动中的片段导航到另一个活动中的片段?

来自分类Dev

后退按钮关闭应用程序,而不是转到上一个片段android导航组件

来自分类常见问题

如何使用后退按钮之类的按钮关闭当前片段?

来自分类Dev

如何在查看最后一个片段和第一个片段时使后退/下一个按钮不可见

来自分类Dev

使用jetpack从ViewPager2导航到另一个片段

来自分类Dev

在Android中管理工具条的导航和从片段到片段的后退按钮

来自分类Dev

无法从活动导航到片段

来自分类Dev

无法使用喷气背包导航导航到片段?

来自分类Dev

如何使用导航组件(片段到片段)在Espresso中测试片段导航?

来自分类Dev

Android片段导航自定义导航后退按钮

来自分类Dev

如何在MainActivity中找到最后一个片段

来自分类Dev

我如何在mainActivity中找到最后一个片段

来自分类Dev

在arraylist中一个接一个地向前移动到最后,在按下按钮时使用片段?

来自分类Dev

使用 MaterialDrawer 导航到片段

来自分类Dev

使用适用于Android的MVVM模式时从一个片段导航到另一个片段

来自分类Dev

Android后退一个片段,当按下硬件后退按钮时会显示后退一个片段。

来自分类Dev

替换、添加、替换片段,然后导航返回按钮不适用于第一个片段

来自分类Dev

用户单击AlertDialog的“确定”按钮后如何导航到下一个活动?

来自分类Dev

当我从片段活动导航到另一个活动时,片段活动调用destroy方法

来自分类Dev

从片段导航到另一个时隐藏键盘

来自分类Dev

从DialogFragment导航到另一个片段时关闭

Related 相关文章

  1. 1

    如何从下一个片段导航到最后一个弹出的片段?

  2. 2

    在导航到另一个片段并使用Kotlin中的“后退”按钮返回后,为什么片段中的EditText显示相同的值?

  3. 3

    片段导航无法与ActionBar上的“后退”按钮一起使用,对于实体按钮来说也可以

  4. 4

    使用导航控制器按下后退按钮后,如何防止之前的片段出现?

  5. 5

    无法从具有列表视图的片段导航到另一个片段

  6. 6

    带片段的后退按钮导航

  7. 7

    使用NavController从片段导航到另一个片段

  8. 8

    如何使用导航从bottomsheetdialog导航到片段?

  9. 9

    如何从一个活动中的片段导航到另一个活动中的片段?

  10. 10

    后退按钮关闭应用程序,而不是转到上一个片段android导航组件

  11. 11

    如何使用后退按钮之类的按钮关闭当前片段?

  12. 12

    如何在查看最后一个片段和第一个片段时使后退/下一个按钮不可见

  13. 13

    使用jetpack从ViewPager2导航到另一个片段

  14. 14

    在Android中管理工具条的导航和从片段到片段的后退按钮

  15. 15

    无法从活动导航到片段

  16. 16

    无法使用喷气背包导航导航到片段?

  17. 17

    如何使用导航组件(片段到片段)在Espresso中测试片段导航?

  18. 18

    Android片段导航自定义导航后退按钮

  19. 19

    如何在MainActivity中找到最后一个片段

  20. 20

    我如何在mainActivity中找到最后一个片段

  21. 21

    在arraylist中一个接一个地向前移动到最后,在按下按钮时使用片段?

  22. 22

    使用 MaterialDrawer 导航到片段

  23. 23

    使用适用于Android的MVVM模式时从一个片段导航到另一个片段

  24. 24

    Android后退一个片段,当按下硬件后退按钮时会显示后退一个片段。

  25. 25

    替换、添加、替换片段,然后导航返回按钮不适用于第一个片段

  26. 26

    用户单击AlertDialog的“确定”按钮后如何导航到下一个活动?

  27. 27

    当我从片段活动导航到另一个活动时,片段活动调用destroy方法

  28. 28

    从片段导航到另一个时隐藏键盘

  29. 29

    从DialogFragment导航到另一个片段时关闭

热门标签

归档