在Android中使用ActivityGroup或Fragments等正确管理导航?

Posted

技术标签:

【中文标题】在Android中使用ActivityGroup或Fragments等正确管理导航?【英文标题】:Manage navigation properly Tabbar with ActivityGroup or Fragments etc in Android? 【发布时间】:2014-01-26 07:38:30 【问题描述】:

我在我的一个示例应用程序中使用带有 ActivityGroup 的 Tabbar。以下是我的应用程序的结构

Tab1 -> ParentActivity1 -> ChildActivity_11 -> ChildActivity_12
Tab2 -> ParentActivity2 -> ChildActivity_21 -> ChildActivity_22
Tab4 -> ParentActivity3 -> ChildActivity_31
Tab4 -> ParentActivity4 -> ChildActivity_41

我面临的问题是,当我在 ChildActivity_12 中按下本机后退按钮时,它应该转到 ChildActivity_11 但不知何故它正在从应用程序中退出。有人可以建议我这里的支票应该是什么吗?

如果有人可以在这里指导我在导航控件(如带有 ActivityGroup 的 Tabbar、android 中的 Fragments 等)中正确管理导航?

【问题讨论】:

@VB 我遇到了同样的问题,但我可以解决它。发布您的 ActivityGroup 活动代码。 【参考方案1】:

ActivityGroup 已被标记为已弃用已有一段时间了。如果您希望为您的应用程序实现现代的外观和感觉,那么 ActionBar TabsFragments 是您的最佳选择。

还有一点要记住的是现代 Android 如何向用户呈现标签,因为它与 ios 有很大不同。在 iOS 上,即使用户在选项卡内部导航,TabBarController 仍保留在屏幕底部。在 Android 上,标签属于 Activity。如果用户导航得更深,通常会显示一个新的Activity,而旧的Activity 的选项卡将不再可见。

正如Android docs on tabs 中所述,它们最适合用于“与收藏相关的同级屏幕”。如果您希望提供一组同等权重的导航项,那么可能值得研究其他模式,例如 NavigationDrawer、ActionBar Spinners 或仪表板。

【讨论】:

以上是关于在Android中使用ActivityGroup或Fragments等正确管理导航?的主要内容,如果未能解决你的问题,请参考以下文章

android:使用ActivityGroup嵌入活动

Android 活动组使用

继承的tabactivity怎么用appcompatactivity代替并实现tabactivity的的效果

ActivityGroup window bad token问题深入分析

ActivityGroup中EditText无法删除的问题

在 ActivityGroup 中暂停和恢复子活动