首页 > 解决方案 > 如何在 ViewPager 中构建嵌套片段?

问题描述

我有一个 ViewPager,它包含 3 个片段。其中一个片段是一个 ScrollView,有几个不同的部分(一个关于我的屏幕,带有照片上传、详细信息、设置部分)。

我正在使用 MVVM 解耦业务逻辑,但 Fragment 仍然很大(700 行代码),因为所有部分都需要大量 UI 逻辑(RecyclerViews、反应性字段、onActivityResult 相关的东西)。

如果 Fragment 是一个 Activity,我可以将所有 3 个部分添加为单独的 Fragment 并管理与 Activity 的通信,但由于它是一个 Fragment,我不确定如何组织这些嵌套的部分,以便它们不在一个类中而是还是可以互相交流的。

标签: androidandroid-fragmentsdesign-patternsandroid-architecture-navigation

解决方案


是的。你可以做嵌套片段。我建议将您的逻辑拆分为多个片段,以使其更加模块化和可重用。

这是我将遵循的方法:

  • 你有 3 个片段的 viewPager。我想第一个片段中包含太多内容,这就是您要使用嵌套片段进行拆分的内容。
  • 使用多个 frameLayouts 定义布局。在每个框架布局中,您可以插入一个片段。

  • 就像这样:(这不是真正的代码,而是描述潜在解决方案的东西)


推荐阅读