android - 何时使用 Activity 转换与动态 fragment 的模式

标签 android android-layout android-3.0-honeycomb android-fragments android-activity

关于如何处理 Android Activity 与 fragment 中的 UI 转换是否有任何模式?我目前正在研究一个在景观中最多有 3 列的 UI。 我希望用户界面从屏幕上的 1 列开始,然后在第二列中选择移动的内容,然后在平板电脑和手机的第三列中单击第二列中的某些内容,然后在第一列中淡出在手机上。 我想知道什么时候应该将其作为 Activity 转换执行,什么时候应该只使用带有显示 View 的 fragment 。据我所知, fragment 可以移动到其他 Activity ,所以我的选择是使用静态列布局实现 Activity ,然后将 fragment 与它们一起转换,或者让一个 Activity 与所有 3 列一起并让 Activity 管理出现 fragment 。这两种方法都可以工作,但我对这两种解决方案的优缺点感兴趣。

有两个问题与我的问题相似,但没有完全回答我的问题

最佳答案

Fragment 看起来像是更多的代码(因为您将 View 放在 fragment 中,将 fragment 放在 Activity 中,而不仅仅是 Activity 中的 View ),但它们非常适合让您免于烦恼在这种情况下-绝对要使用 Fragments。他们甚至为您处理过渡。

我们有一些名为“Honeycomb Gallery”的示例代码,您可以查看here ,它具有两列加操作栏布局,并且能够显示/隐藏最左边的列。这应该可以让您在弄清楚如何为多个 fragment 进行布局并显示/隐藏它们方面提供一个良好的开端。

仅供引用,在一个 Activity 中使用多个 fragment 而不是多个 Activity 的一个重要权衡是 fragment 不直接响应 Intent - 例如,如果您有一个笔记应用程序,其中“查看笔记”页面是一个 Activity,您对其进行了更改,以便在主 Activity 中有一个“查看便笺” fragment ,然后您必须对其进行设置,以便主 Activity 接收一个便笺 ID 和一个便笺操作(创建、查看、编辑,无论如何)在 Intent 中,而不是仅仅让“查看笔记” Activity 在 Intent 中接收笔记ID。然后,主 Activity 需要相应地在页面上设置 fragment 。没什么大不了的,但是如果通过 Intent 对应用程序各个部分的外部可访问性很重要,那么将应用程序分解为几个 Activity 以及使用 fragment 来表示各个组件可能会更容易。

关于android - 何时使用 Activity 转换与动态 fragment 的模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7718242/

相关文章:

Android - 通过内置的 SMS 应用程序发送 SMS

android - 如何自动居中裁剪 ImageView Android?

android - 在Android中实现 "Thumbs down/Thumbs up"切换按钮的方法

android - 获取当前Android View 并强制重绘

android - 在更高版本的 Android 上对幼儿安全的应用程序

java - hive XML 解析错误

android - 使用 Google Drive Api 列出 GDrive 的文件和文件夹

android - 如何在 Spinner Widget 而不是 Text View 中显示自己的 View ?

android - Recyclerview 项目在给它匹配父项时不会占据屏幕的所有宽度

android - Android 的大堆选项是否适用于升级到 ICS 的旧手机?