【问题标题】:How to display another fragment on top of BottomSheetDialogFragment如何在 BottomSheetDialogFragment 顶部显示另一个片段
【发布时间】:2020-10-17 02:39:51
【问题描述】:

有没有办法在DialogFragment 上显示片段?当我的BottomSheetDialogFragment 在某些操作后显示时,我需要显示另一个片段(不是对话框片段的类型)而不关闭该对话框,我试图从对话框中删除暗淡效果而不是隐藏视图,但这并不好,对话框片段是不可见的,但是,它是钢在顶部和后压首先删除这个不可见的对话框,我需要实现的是正常的回栈顺序,如“正常”片段

【问题讨论】:

    标签: android fragment dialogfragment android-bottomsheetdialog


    【解决方案1】:

    我遇到了同样的问题,我找到的解决方案是:

    1. 在您的 BottomSheetDialogFragment 布局上,将 id 设置为 ViewGroup(您可以使用根视图或在某处添加 FrameLayout)

    2. 在您的 BottomSheetDialogFragment 类中使用它来打开新片段:

       childFragmentManager.beginTransaction()
               .add(R.id.yourId, newFragment, newFragment.tag)
               .addToBackStack(newFragment.tag)
               .commit()
      

    问题:当你按下后退按钮时,它会关闭整个对话框,所以我在第二个片段中放置了一个 X 图标,调用 parentFragmentManager.popBackStack()

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-19
      • 1970-01-01
      相关资源
      最近更新 更多