如何导航到 Half Fragment ? (导航架构组件)

How to navigate to Half Fragment ? (Navigation Architecture Component)

我正在我的应用程序中尝试导航架构组件。 早些时候我使用片段事务来实现以下功能。 基本上我想从导航。

片段A->片段B (自定义片段部分透明且屏幕大小的一半)

如果我正在使用导航组件并尝试

Navigation.findNavController(view).navigate(R.id.action_FragmentA_to_FragmentB)

那么结果是FragmentA被FragmentB替换,背景片段不可见

如果导航架构组件允许,我想知道一个解决方案。

P.S: 听说过nested Navigation Host,但是在Fragment里面使用好不好。

更新:

FragmentB 将有进一步交易的行动和 示例:

FragmentA->FragmentB->FragmentC (自定义片段部分透明且一半屏幕大小)

当用户按下后退按钮时,Fragment C 应替换 FragmentB,并且应为所有片段事务维护 backStack。

您可以使用 BottomSheetDialogFragment 来获得所需的结果。
更多信息:https://developer.android.com/reference/android/support/design/widget/BottomSheetDialogFragment

TLDR:我使用嵌套图来实现要求。

您好,感谢您的帮助,但我使用以下过程在 BottomSheet 中导航。

  • MainActivity

    • NavHost(FragXYZ->FragA)
      • (Inside Fragment A)BottomSheetDialogFragment.show() 显示 bottomSheetMenu
        • (Inside Fragment B) BottomSheetDialogChildFragment(使用 Fragment 启动 BottomSheetDialogFragment 的子 Fragment 事务)扩展 NavHostFragment

演示:GitHub