如何将默认颜色更改为选项卡主机的颜色

3
我正在使用2.2 SDK版本,并使用TabHost以选项卡视图格式显示活动。当我在手机上安装应用程序(版本为2.2.1)时,选项卡主机的颜色已更改为黄色。即使我没有给TabHost任何颜色,我也不知道为什么颜色会发生变化。同样的应用程序在模拟器中运行时,显示默认颜色(即灰色和黑色)。有面临并解决这个问题的人,请指导我。以下是代码:
    mTabHost.addTab(mTabHost.newTabSpec("one").setIndicator("classA").setContent(new Intent(this, classA.class)));
    mTabHost.addTab(mTabHost.newTabSpec("two").setIndicator("classB").setContent(new Intent(this, classB.class)));
    mTabHost.addTab(mTabHost.newTabSpec("three").setIndicator("classC").setContent(new Intent(this, classc.class)));`

这是一个特性而非问题...使用Android默认主题的TabHost。 - Selvin
所以设备上的默认主题不是黄色...您能否在布局文件中提供TabWidget定义?如果有的话,还需要可绘制选择器。 - Selvin
我没有为此提供任何布局。 - RAAAAM
所以你在这个活动中没有使用setContentView吗?也许你在AndroidManifest.xml中更改了主题。 - Selvin
是的,我在这个活动中没有使用SetContentView。我不确定我是否在AndroidMainfeast.xml中进行了更改。让我检查一下。我给我的应用程序添加了Admob广告,这会对我的应用程序造成任何影响吗...??? - RAAAAM
显示剩余2条评论
1个回答

22

在默认的 Android 标签栏中,颜色是灰色的,您可以轻松地更改标签栏的颜色。

使用下面这行代码来改变标签的颜色:

     tabHost.getTabWidget().getChildAt(i).setBackgroundColor(Color.RED);
or
     tabHost.getTabWidget().getChildAt(0).setBackgroundColor(Color.parseColor("#4E4E9C"));

如果需要进一步参考,可以查阅这里

如果您正在寻找类似 iPhone 的选项卡,可以参考http://bakhtiyor.com/2009/10/iphonish-tabs/


谢谢,但是我想要显示默认颜色,除了默认颜色之外我不需要其他颜色。 - RAAAAM
@HariRam:为此,您必须将选择器放在它上面。真的很好。喜欢它。 :) - Shreyash Mahajan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接