我有定位到1.5框架和使用默认光主题的应用程序。当使用标签插件与此主题,标签图像是几乎不可见,并且选项卡字幕是完全不可能辨别,除了当前活动的选项卡。

在默认黑暗的主题这些标签来通过很清楚,但是这不是一个解决方案,我会非常高兴。有一个简单的设置,我可以设置,即设置在光的主题更好的可见性的标签控件,或者我将有图片和文字风格手工篡改?

有帮助吗?

解决方案

这是不漂亮,但你可以在你的标签活动试试这个。

// 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/

其他提示

这是一个错误;您可以在问题跟踪报告?

据我所知,您的自定义文本和图像风格的解决办法听上去不错。

这也是值得注意的是,在2.0的标签窗口小部件似乎不具有光的风格。

通过使用hierarchyviewer工具我发现在标签中的TextView的机器人的id。一种更好的方式来改变文本属性(包括颜色)是通过执行以下...

TabWidget tw = (TabWidget)tabHost.findViewById(android.R.id.tabs);
View tabView = tw.getChildTabViewAt(0);
TextView tv = (TextView)tabView.findViewById(android.R.id.title);
tv.setTextSize(20);

一个非常简单的方法来解决在布局中的颜色/对比度问题:

<TabWidget
   android:id="@android:id/tabs"
   android:background="#FF000000"
   android:padding="2dp"

此设置TabWidget黑色的背景,所以你必须用黑背景的标签对比增添了些许填充。它并不完美,但作品1.5,2.2,光明与黑暗的主题。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top