如何在没有弃用tabhost的情况下实现Android选项卡菜单

时间:2012-11-22 02:50:27

标签: java android layout android-fragments android-tabhost

我的问题听起来很简单,但我似乎找不到足够的答案。

我正在尝试设计适用于平板电脑的应用程序,该应用程序在屏幕的顶部有一些信息,然后是一个标签菜单,用于显示上一季度以下的信息。

基本上我正在寻找的是:

┌─────────────────────────────────────
│
│ Top of Page
│
├───────┬───────┬───────┬───────┬─────
│ Tab 1 │ Tab 2 │ Tab 3 │ Tab 4 │
│       └───────┴───────┴───────┴─────
│
│ Bottom of page
│
│
│
⁞

我原本打算使用带有多个标签的tabhost;但我意识到它现在已被弃用,所以我正在寻找最有效,最新的Android开发方法。 已经实现的最简单的事情就是动作栏,但是它位于应用程序的顶部 - 这也不是我想要的。

我在另一个线程上读到了应该使用Fragments;但考虑到tabhosts的简单性,我不太清楚片段如何替代它,因为据我所知,它没有内置的tab选项;只列出。 (当然我可能错了)

我找到的其他选项是ActionbarSherlock,只使用更改布局的按钮。

我觉得总体上我要问的是,什么是最新的,最新的向后兼容方式来重现我在那里的设计?

编辑: 到目前为止,我从研究中发现的唯一一件事仍然是说我使用兼容API的片段,或者只是使用按钮和FrameLayout。 我真的对使用动作栏不感兴趣,因为它不会低于应该位于顶部的布局。

或者,即使它已经被弃用了,仍然会继续使用TabHost真的很糟糕吗?

2 个答案:

答案 0 :(得分:0)

CMIIW但我认为tabhost尚未弃用。即使它被弃用了,但这并不意味着你不能使用它,它只是意味着有更好的选择。如果您认为自己真的想要并且使用起来很舒服,请去Tabhost。

换句话说,你可以看看这个: alternative of tabactivity或者如果你想更好地理解使用Tabhost how do i use tabhost

替代方式包括: 使用带有选项卡式指标的ViewPager,例如PagerTabStrip,ViewPagerIndicator项目中的TabPagerIndicator,PagerSlidingTabStrip等。

在操作栏中使用标签(注意:这些标签会转换为某些设备尺寸和方向的下拉列表)

使用FragmentTabHost

在常规活动中使用TabHost和TabWidget

以下示例项目演示:

PagerTabStrip:https://github.com/commonsguy/cw-omnibus/tree/master/ViewPager/TabPager

TabPageIndicator:https://github.com/commonsguy/cw-omnibus/tree/master/ViewPager/VPI

操作栏标签:https://github.com/commonsguy/cw-omnibus/tree/master/ActionBar/TabFragmentDemo

TabHost和TabWidget:https://github.com/commonsguy/cw-omnibus/tree/master/WidgetCatalog/Tab

请注意,前三个示例都使用ActionBarSherlock,因此它们可以在Android 2.x设备上运行。第四个应该从Android 1.0开始运行。

答案 1 :(得分:-2)

您可以使用:

Action Bar in android