【问题标题】:Should use Android tabhost or android action bar tabs based on requirement应根据要求使用 Android tabhost 或 android action bar tabs
【发布时间】:2015-09-19 19:05:30
【问题描述】:

我最近开始了 android 应用程序开发并开发了我的第一个应用程序。我想开发一个基于标签的界面。我不需要使用兼容性库。对于旧版本。

我想要这样的界面:

我知道选项卡式活动已被弃用。所以现在我有两个我知道的选择。操作栏选项卡 (http://developer.android.com/guide/topics/ui/actionbar.html#Tabs) 或带有选项卡小部件的选项卡主机,如此处示例所示:http://android.codeandmagic.org/android-tabs-with-fragments/

在本文的最后,我读到这种方式已经过时,推荐使用操作栏选项卡。但就我而言,除了标签之外,我还有两个要求:

  1. 我需要另一个活动公共区域,而不是那些选项卡。我不确定操作栏选项卡是否也可以拥有该公共区域。图像中带有edittext的区域是地方,我在说。
  2. 我需要在两个选项卡和父活动之间进行通信。

所以我的问题是我应该以哪种方式工作?带有标签小部件或操作栏标签的标签主机。或者我想错了,还有其他更好的方法可以实现这一目标。这个公共区域将是一种日志区域,将插入不同的操作并向下滚动。

【问题讨论】:

    标签: android android-fragments android-actionbar android-tabhost android-tabs


    【解决方案1】:

    我不需要使用兼容性库。对于旧版本

    Android 支持库有许多“不适合旧版本”的东西。引用the documentation:

    Android 支持库包是一组代码库,提供向后兼容的 Android 框架 API 版本以及只能通过库 API 获得的功能。

    这种情况已经持续了大约四年。

    我知道选项卡式活动是贬值的东西

    操作栏标签也已被弃用,从去年和 Android 5.0 版本开始。

    所以我的问题是我应该以哪种方式工作?带有标签小部件或操作栏标签的标签宿主。

    可能两者都不是。使用TabLayoutFragmentTabHostthe many third-party libraries that add tabs to a ViewPager 中的任何一个。

    在您引用的两个中,TabHost 带有选项卡视图是当前唯一受支持的方法。

    【讨论】:

    • 对于 FragmentTabHost 的使用,是否有必要使用 v4 支持库中的 FragmentActvity,因为它们都来自 v4 支持库?
    • @Hafiz:有两个FragmentTabHost 类。 android.support.v4.app.FragmentTabHostFragmentActivity 和片段反向端口一起使用。 android.support.v13.app.FragmentTabHost 位于 support-v13 库中,可与 Activity 和本机片段实现一起使用。
    • 我应该使用哪一个?两者的工作方式相同,但不同之处在于我需要使用 FragmentActivity ?
    • @Hafiz:“我应该使用哪一个?” ——我没有办法回答这个问题。 “除了我需要使用 FragmentActivity 的区别外,两者的工作方式相同?” -- 是的,连同其余的片段反向移植。请注意,如果您使用的是appcompat-v7(例如AppCompatActivity),它会继承自FragmentActivity
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多