如何获取 NavHostFragment

Sab*_*ran 9 android android-fragments fragmentmanager android-architecture-components android-architecture-navigation

我正在将 Android 的导航架构组件集成到我的应用程序中。我在将数据从活动传递到片段的开头时遇到了一些问题,所以我遵循了这个答案:导航架构组件-将参数数据传递到 startDestination

这个逻辑对我来说似乎很合理,但我正在努力确定如何实际获得 NavHostFragment。Elliot Shrock 使用了这条线——

val navHostFragment = navFragment as NavHostFragment

但我还没有找到一个有效的 Java 等价物。我尝试通过使用获取我的 navHost 的片段 getSupportFragmentManager().findFragmentById(R.id.[mynavhostid])

但此命令返回空值。有任何想法吗?

Sab*_*ran 5

我通过首先膨胀包含 NavHost 的视图解决了这个问题,然后使用 supportFragmentManager 来获取 navHost Fragment 并传入我的默认参数。

希望 Google 的 Android 团队在未来为此提供更简洁的解决方案。