java - 尝试导航到另一个片段时出现异常
问题描述
我最近开始使用 Nav 组件进行探索,我偶然发现了这个Fragment HomeContainerFragment{e1561bc} (156e8ba6-f284-4c85-a4bb-82a63069888b)}notassociated with a fragment manager.
Huh?但那是一个片段。我什至可以使用片段事务替换导航到它。错误指向 findNavController:
NavDirections navDirections = LoginFragmentDirections.actionLoginFragmentToHomeContainerFragment();
NavHostFragment.findNavController(HomeContainerFragment.newInstance()).navigate(navDirections)
这HomeContainerFragment.newInstance()
返回这个new HomeContainerFragment()
解决方案
我误解了findNavController
. 我认为它应该是要替换当前片段的片段。我错了。它应该是当前片段,而不是下一个片段。
所以将其更改为:findNavController(this)
修复它。
推荐阅读
- php - Laravel 选择了错误的数据库
- entity-framework-core - 为什么 dbcontext.savechanges() 不清除 efcore 中此 dbcontext 的跟踪实体
- azure - 使用参数从 Azure 运行导出模板
- c++ - 如何使用 fmt 在 json 字符串中格式化 {}?
- hangfire - Hangfire客户端和服务器针对不同的平台,它会工作吗?
- deployment - 如何解决 Azure ML Studio 中的“服务状态正常,但测试调用返回 'BadGateway'”错误?
- html - Gatsby 网站 - index.js 中的 CSS 在首次访问时不加载
- wmi - Win32Shutdown 和 shutdown.exe 之间的区别
- python-3.x - Step 函数中的“Athena.InvalidRequestException”
- spring-boot - Spring Security Session Timeout 在本地主机上工作但不在服务器上