【问题标题】:Handling tabs, actionbar, activities and fragments处理选项卡、操作栏、活动和片段
【发布时间】:2012-02-20 05:22:12
【问题描述】:

我在设计以下场景时遇到问题:

  1. 显示联系人列表的 3 个选项卡(所有人、朋友和家人)
  2. 所有选项卡都将根据组包含联系人列表
  3. 可以选择和查看任何联系人,但应位于同一选项卡中(全部、家庭或朋友)
  4. 简而言之,标签应该在全球范围内可用。

在这里,我决定使用ActionBar,并通过使用从onTabSelected()TabListener 调用的片段来更改视图;我很困惑,因为我必须只保留单个活动但多个片段。 “保持单一活动”这是一种标准/有效的方法吗?请提出建议。

提前致谢。

【问题讨论】:

  • 您必须使用带有标签栏的活动组,其中标签将保持全局可用
  • @Sumant ActivityGroup 已被弃用,您能否进一步提出建议?

标签: android android-layout android-emulator android-fragments android-activity


【解决方案1】:

我知道这已经晚了,但我使用带有片段的 tabhost 来做类似的事情。这是一个很好的教程。 http://thepseudocoder.wordpress.com/2011/10/04/android-tabs-the-fragment-way/

【讨论】:

    【解决方案2】:

    您应该有一个 Activity 和一个容器(可以是一个空的 LinearLayout),其中的片段会根据所选的选项卡被替换。

    【讨论】:

    • 是的,我已经这样做了。但我不确定在整个应用程序中保持单个活动是否有效。您能否告诉我,如果在整个应用程序中保留单个活动,GC 是否会正常工作?
    • 对此我不太确定,但在我读过的某处,当活动进入后台时,GC 工作,所以如果我只保留单个活动,它可能不会出现。如果我错了,请纠正我。
    • 创建新活动比拥有单个活动并重复使用它更昂贵
    • 感谢您的建议;但我不会重用该活动,而是会被应用程序持续使用,并且片段会被切换,正如你所知道的场景。还会好吗?
    • 仅供参考,您不需要附加空布局。只需指定android.R.id.content 作为附件目标。
    猜你喜欢
    • 2012-06-06
    • 1970-01-01
    • 1970-01-01
    • 2012-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-05
    相关资源
    最近更新 更多