介绍:
基本的“片段教程”模式如下所示:
- 在平板电脑上,左侧有一个列表,右侧有详细信息。
- 两者都是
Fragments
并且都居住在同一个Activity
。 - 在电话上,将一个清单
Fragment
合二为一Activity
。 - 启动
Activity
包含详细信息的新文件Fragment
。
(例如Dianne Hackborn的Android 3.0 Fragments API和Fragments API Guide)
在这两个设备,功能是在Fragments
。(简单)
在平板电脑上,整个应用程序是1Activity
,在手机上,有很多Activities
。
问题:
- 是否有理由将手机应用拆分为多个
Activities
?
这种方法的一个问题是,您在Tablet主面板和单独的Phone中复制了很多逻辑。Activity
Activities
- 在两种情况下使用相同的切入和切
Fragments
出逻辑(只是使用不同的布局)来保留1 Activity模型会不会更容易?
这样,大多数逻辑都驻留在Fragments
自身中,并且只有一个Activity
-较少的代码重复。
我还了解到的ActionBarSherlock
是,它似乎最适合Fragments
而不是Activities
(但我还没有使用它)。
教程是否过于简化,还是我错过了这种方法的主要知识?
我们已经在办公室成功地尝试了这两种方法-但我将要开始一个更大的项目,并希望尽可能简化自己的工作。
一些与相关问题有关的链接:
- 困境:何时使用片段与活动:
- 何时使用活动过渡与动态片段的模式
- Android-我需要对片段与活动和视图进行一些说明
- Android中的活动或片段?
- 多个片段和活动交互设计
- 那么,Android 3.0中的Fragments的确切优势是什么?
更新
开始悬赏的问题-仍然不确定为什么我需要在平板电脑活动和每个电话活动中重复应用逻辑。
还发现Square的家伙们写了一篇有趣的文章,非常值得一读:
onItemSelected()
Activity 中的方法。在我的“真实”应用中,我有很多列表和子列表。此模式表明我的Tab活动必须具有一种onItemSelected()
处理每个列表的方法。另外,电话活动中的每个活动必须具有相同的逻辑。恕我直言,最好将“选定项”逻辑放入每个片段中-无需重复,我更喜欢这种构造代码的方式。我希望这对您有帮助