Android TabHost 已弃用

Posted

技术标签:

【中文标题】Android TabHost 已弃用【英文标题】:Android TabHost deprecated 【发布时间】:2012-12-25 16:17:25 【问题描述】:

我正在创建将支持android 2.2 to Android 4.1 的应用程序。 TabHostdeprecated in Android version 3.2。但是创建的应用程序支持所有versions。但我想创建Tab bar 应用程序,它看起来像tab bar in Android 4.1Android 4.2 中运行应用程序时,如果我在android 3.2 version 设备下运行应用程序,它必须看起来像@987654332 @ 在那个设备中。我该怎么做?

【问题讨论】:

您确定 TabHost 已被弃用吗? Documentation 没有这么说。 嗨,我可以使用 Actionbar 创建多少个标签栏。?如果超过 10 到 15 意味着我如何才能看到最后一个。 Hey TabHost 未被弃用。 TabActivity 已弃用。 【参考方案1】:

你的问题有很多要点,

    TabHost 还不是 deprecated。最近 Google 弃用了 TabActivityActivityGroup。 即使它已弃用,也不意味着它不能使用。 如果 X 已被弃用,仅表示存在一个名为 Y 的更好替代方案。

现在回答你的问题,你有多个选择

    您可以按照其他答案的建议使用 ActionBarSherlock。 (编辑:ActionBarSherlock 现已弃用。) 您可以将TabHost 与片段一起使用,请参阅我的回答here 好的例子。要在 3.0 之前的 API 中使用 Fragment,您需要使用 Google's support library.

【讨论】:

【参考方案2】:

试试ActionBarSherlock。

ActionBarSherlock 是支持库的扩展,旨在通过单个 API 促进在所有 Android 版本中使用操作栏设计模式。

该库将在适当时自动使用本机操作栏,或者会自动围绕您的布局包装自定义实现。这使您可以轻松地为 2.x 及更高版本的每个版本的 Android 开发带有操作栏的应用程序。

教程:

tutorial 1 , tutorial 2 , tutorial 3

【讨论】:

是的,我已经尝试过这些样本。但我需要创建一个具有多个选项卡视图的应用程序,并且必须将不同的 URL 加载到该选项卡栏中。 您可以使用 ActionBarSherlock 完成您所说的一切。您也可以使用 Fragments 和 TabHost。 Oh.OK.如何创建自动检测Android版本并根据版本创建标签栏的应用程序。 ActionBarSherlock 会自动处理这个问题。您无需检查版本。图书馆会为您处理。 嗨,我可以使用 ActionBar 创建多少个选项卡视图。?如果我创建超过 10 个标签栏。如何逐个创建和查看这些选项卡。【参考方案3】:

补充一点,Android 引入了 ActionBarCompat 以确保 ActionBar 与 3.0 到 2.1 以下的操作系统兼容。您可以在支持库中使用 ActionBarCompat 代替 ActionBarSherlock

http://android-developers.blogspot.co.uk/2013/08/actionbarcompat-and-io-2013-app-source.html

【讨论】:

以上是关于Android TabHost 已弃用的主要内容,如果未能解决你的问题,请参考以下文章

如何在tabhost中居中文本?

Android 位置已弃用?

startIntentSenderForResult 已弃用 Android

处理已弃用的 android.text.ClipboardManager

Android getAllNetworkInfo() 已弃用。啥是替代方案?

minSdk,targetSDK,已弃用 - Android