android-fragments 如何实现片段不被保存到backstack上?

vddsk6oq  于 2022-11-14  发布在  Android
关注(0)|答案(1)|浏览(152)

我在一个应用程序上工作,当你打开应用程序时,这个应用程序有一个列表片段作为起点。现在当我点击一个listItem时,一个更新片段打开,当你按下保存按钮时,你会回到列表片段。问题是,当我现在按下手机上的后退按钮退出应用程序时,不会发生这种情况,而是我会回到更新片段。
我想让更新片段不会被保存到backstack上,或者至少我认为这样可以达到我想要的效果。但是经过一些研究,我仍然很难理解backstack,以及如何在backstack代码上实现这些东西,所以我希望有人能帮助我。

编辑1:

我将这行代码添加到了更新按钮功能中。

fragmentManager?.popBackStack()

现在它看起来像这样:
1.)listFragment
2.)点击它-〉打开更新片段-〉按更新按钮-〉返回列表片段
3.)按下我的手机和this happens的后退按钮,这样更新片段现在不会打开,但操作栏中的文本仍然会出现,以及后退按钮。

编辑2:

我去掉了fragmentManager?.popBackStack()这一行,并将NavigationAction的Pop Behavior更改为从更新片段指向列表片段(为了澄清:我的列表片段被命名为NAV_home)。

ct3nt3jp

ct3nt3jp1#

作者位置:

我更改了NavigationAction的Pop Behavior,它从我的更新片段引导到我的列表片段(为了澄清:我的列表片段命名为nav_home),现在它工作了,但我不能确切地解释为什么。

相关问题