【问题标题】:Is it a good practice to use a single fragment to display the UI instead of the activity?使用单个片段而不是活动来显示 UI 是一种好习惯吗?
【发布时间】:2017-12-17 22:24:53
【问题描述】:
正如标题所述,在活动中使用单个片段来显示内容是否被认为是一种好习惯?我开始注意到越来越多的开发人员开始使用片段作为隔离层,将生命周期逻辑与活动(对不起,片段)显示的 UI 分开。我偶然发现的最新示例是 Google 开发人员提供的 architecture blueprints。他们use 只有一个 UI 片段,而 Activity 处理 ViewModel 和屏幕之间的所有导航。
那么,这是一个好的做法还是只是个人喜好?您愿意分享您对该主题的看法吗?
【问题讨论】:
标签:
android
android-fragments
design-patterns
android-activity
architecture
【解决方案1】:
使用 Fragments 作为 UI 是一种很好的做法。
- Activity 可以容纳所有常见的逻辑,而您可以使用不同的 Fragment 为移动设备和平板电脑显示不同的 UI。
- 如果 UI 在 Fragment 中,您可以在多个 Activity 中重复使用它。
- 如果您有像注册流程这样的工作流场景,使用具有多个片段的单个 Activity 将大有帮助。
- 片段回栈的操作比尝试对活动执行相同操作要容易得多。
【解决方案2】:
使用fragment显示UI不错,原因如下:-
1.您可以创建一个活动,并在该活动中显示多个片段。
2.处理后按很容易,因为您可以在主活动类中覆盖 onBackpress() 并处理来自片段的返回键事件,以检查其(片段)可见性和处理事件。
3.布局的可重用性。
4.片段的可重用性。
5. 对不同的片段处理不同的动作菜单非常容易。