android - 导航组件,添加或替换 fragment 或隐藏显示 fragment 等其他内容

标签 android kotlin android-architecture-navigation

我们如何在导航组件中指定替换或添加 fragment ?

NavHostFragment.findNavController(this).navigate(R.id.action_splashFragment_to_categoriesFragment)

最佳答案

如果你只是使用 findNavController().navigate(R.id.someDestinationId)这种等于fragmentManager.add但是如果你想要替换行为并且你不希望用户能够按下并重新加载以前的 Activity ,你应该这样做:

findNavController().navigate(R.id.homeFragment, null, NavOptions.Builder()
                .setPopUpTo(R.id.loginFragment, true)
                .build())

在这种情况下,我在里面 登录 fragment 我想导航到 首页 fragment 我还想替换当前 fragment ,这样用户将无法按下并加载 登录 fragment 再次

关于android - 导航组件,添加或替换 fragment 或隐藏显示 fragment 等其他内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53170078/

相关文章:

android - 如何在android中下载?

java - 使用日期选择器 android 从今天开始检查用户是否超过 18 年

android - 当前的 JDK 版本 1.8 有一个 bug 会阻止 Room 增量

Android Jetpack 导航库和 onActivityResult

android - RTMP android 后处理

android - 在移动设备和桌面设备之间使用表单的最佳方式

php - 无法使用 PHP 和 MySQL 获取已接受的请求

Android studio 没有看到 setupWithNavController

android - 导航架构组件-如何刷新 fragment ?

android - Hilt 不会注入(inject)作用域 ViewModel