android - 导航到目的地时仅创建一个 fragment 实例(android)

标签 android android-studio android-fragments navigation navigationcontroller

我正在使用导航组件。导航时,如果 fragment 已经存在于后台堆栈中,我不想创建新的 fragment 实例,并弹出已经存在于前面的 fragment 。

    findNavController().navigate(RequestTransferFragmentDirections.actionRequestTransferFragmentToBlankFragment())

向前寻找解决方案。

谢谢。

最佳答案

我遇到了同样的问题,但不幸的是,以前的解决方案对我不起作用,尽管它们应该解决这个问题。谢谢顺便说一句! :)
这对我有用,适应您的代码将是:

findNavController().navigate(
    RequestTransferFragmentDirections.actionRequestTransferFragmentToBlankFragment()),
    NavOptions.Builder().setLaunchSingleTop(true).build()
)
我在 navigate() 中看到了我们可以通过的文档options , 所以通过 NavOptions.Builder().setLaunchSingleTop(true).build()将创建此类 fragment 的单个实例。

关于android - 导航到目的地时仅创建一个 fragment 实例(android),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60927327/

相关文章:

android - Instant Run 执行了完整的构建和安装,因为设备上的安装与磁盘上的本地构建不匹配

android - 在 TabLayout 中禁用标签

java - 带键的 Gson 字符串

iphone - Corona - 如何适应不同的设备分辨率,同时保持高分辨率设备的质量?

java - Gradle 构建错误无法获取未知属性 supportVersion

android - 从包中检索 hidensity drawable (honeycomb)

java - 安卓库

Android Studio 1.0 - "local path doesn' t 存在”与外部库项目

Android L - Activity with Fragment 显示错误(只显示 fragment )

android-layout - 带有导航组件的单个事件 : how to handle different AppBar/Themes