【问题标题】:Reorder fragments inside fragmentManager在 fragmentManager 中重新排序片段
【发布时间】:2020-03-26 09:34:50
【问题描述】:

假设我观察到一个 FragmentsTag 列表如下:[A, B, C]

我的目标是按此顺序显示这些片段(在我的例子中是linearLayout)。

所以我可以这样做:

childFragmentManager.fragmentTransaction {
   add(R.id.fragmentContainer, fragment, fragmentTag)
}

现在假设片段的顺序发生了变化,并且我选择隐藏片段 B。所以我在 liveData 中收到了一个新的片段标签列表通知,如下所示:[C, A]

如何在我的 LinearLayout 中按此顺序显示这些片段?并隐藏旧片段 B。

请注意,我想重用已在 fragmentManager 中的片段 [A, B, C] 的实例。所以没有新的FragmentManager.add()

所以我使用fragmentManager.hide(fragment)fragmentManager.show(fragment)...但是,我无法保持秩序。

【问题讨论】:

    标签: android fragment fragmentmanager


    【解决方案1】:

    我清除了 LinearLayout 中的所有视图,并在每次更新 liveData 时将动态片段添加到 linearLayout。这对我来说似乎是一个暂时的解决方案。

    【讨论】:

      猜你喜欢
      • 2020-07-14
      • 2016-04-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-06-23
      • 2013-01-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多