3

来自Android 最佳实践 API 指南:支持平板电脑和手机

在某些情况下,您可能有一个 APK 可以同时支持手机和平板电脑。假设在手机上,您有一个ListFragment在 Activity A 中显示联系人列表的片段,然后在用户选择联系人时在Details新的 Activity B 中打开一个片段。Activity

Fragment现在在平板电脑上,我们可以通过将两个s 组合成一个单一的、多窗格Activity的 Activity A来利用额外的空间。

平板/手机上的片段设计

再次考虑手机上的应用程序。在活动 A 中,选项菜单可能会提供“全选”或“同步联系人”操作。长按列表中的项目可能会提供“编辑”或“删除”等选项。在活动 B 中,选项菜单也可以提供“编辑”、“删除”或“收藏”等操作。

但是,我们如何在平板电脑上整合这些选项?我们是否只是将所有选项菜单项合并到一个巨大的菜单中(1)?还是我们只是放弃 Activity B 菜单,让用户依赖长按左侧的项目(2)?另一种选择是修改详细信息片段以将一些操作添加到详细信息片段本身 (3)。

根据 Android Design 网站,Contacts 应用程序似乎使用了 1 和 3 的组合。看看http://developer.android.com/design/patterns/multi-pane-layouts.html

那么是否有推荐的方法,还是由开发人员决定?

4

1 回答 1

3

它们都可以进入选项菜单(或者,更好的是,操作栏),假设在 Fragment A 的列表中始终至少有一个项目被选中。如果存在 Fragment A 的列表为空或没有选择的场景,然后故事变得有点复杂,因为 B 的操作栏项目都假定存在选择。理想情况下,您不会在选择之前将 Fragment B 加载到活动中,在这种情况下,Fragment B 的操作栏项目在它们有效之前不会出现。

话虽如此,片段 B 的布局略有不同(您的选项 #3)也是合理的。我怀疑“最喜欢”的明星切换是否值得,但是,再一次,他们没有问我...... :-)

我绝对不同意的是你的选项#2。您使用选项#1 或#3(或混合)多少取决于您。

于 2012-06-05T15:29:36.650 回答