Light 主题中的 Android TabWidget

标签 android themes tabwidget

我有一个针对 1.5 框架并使用默认浅色主题的应用程序。使用具有此主题的选项卡小部件时,选项卡图像几乎不可见,并且除了当前 Activity 的选项卡外,几乎看不到选项卡标题。

在默认的深色主题中,这些选项卡非常清晰,但这不是我非常满意的解决方案。是否有一个我可以设置的简单设置,设置选项卡小部件以便在浅色主题中获得更好的可见性,或者我是否必须手动篡改图像和文本样式?

最佳答案

它不是很漂亮,但你可以在你的标签 Activity 中试试这个。

// light theme support
final TabHost tabHost = getTabHost();
tabHost.setBackgroundColor(Color.WHITE);
tabHost.getTabWidget().setBackgroundColor(Color.BLACK);

// hack to set font size
LinearLayout ll = (LinearLayout) tabHost.getChildAt(0);
TabWidget tw = (TabWidget) ll.getChildAt(0);

// first tab
RelativeLayout rllf = (RelativeLayout) tw.getChildAt(0);
lf = (TextView) rllf.getChildAt(1);
lf.setTextSize(21);
lf.setPadding(0, 0, 0, 6);

// second tab
RelativeLayout rlrf = (RelativeLayout) tw.getChildAt(1);
rf = (TextView) rlrf.getChildAt(1);
rf.setTextSize(21);
rf.setPadding(0, 0, 0, 6);

/res/values/colors.xml 应该有

<resources>
    <drawable name="black">#ff000000</drawable>
    <drawable name="white">#ffffffff</drawable>
</resources>

AndroidManiest.xml应该有

<application android:theme="@android:style/Theme.Light">

如果你想做一些更疯狂的事情,试试http://ezmobile.wordpress.com/2009/02/02/customized-android-tabs/

关于Light 主题中的 Android TabWidget,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1906314/

相关文章:

android - 更改 Android TabWidget 底栏颜色

android - 如何在android中更改tabhost的字体大小

java - 如何有效地使用事件总线?

Android studio调试报错 "Connection refused"

flutter - 如何在 flutter 中为整个应用程序设置文本颜色主题

gtk - 从 XFCE 面板中移除阴影

android - 将 TabHost 控件添加到 Linearlayout/在 tabhost 选项卡下添加布局

android - 为什么共享库中存在展开符号

android - 为什么 ListView 项目不会增长来包装它们的内容?

windows-phone-7 - 如何根据当前主题 WP7 交换图像