【发布时间】:2016-06-13 18:56:29
【问题描述】:
我的标签文本是蓝色的,背景是白色的。我想在选择标签时显示蓝色背景和白色标签文本。
我使用选择器更改了背景。但是我尝试了多次文本颜色在选择时没有改变。请帮我解决这个问题。
styles.xml
<style name="MainTheme" parent="android:Theme.Holo.Light.DarkActionBar">
<item name="android:actionBarTabTextStyle">@style/tab_text_color</item>
</style>
<style name="actionbar_tab_style" parent="@android:style/Widget.Holo.Light.ActionBar.TabBar">
<item name="android:background">@drawable/tab_background_select</item>
<item name="android:textColor">@drawable/tab_text_select</item>
</style>
tab_background_select.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:state_selected="true"
android:drawable="@color/blue"/>
</selector>
tab_text_select.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:state_selected="true"
android:color="#FFFFFF"/>
<item
android:state_selected="false"
android:color="#0000FF"/>
<!--
<item android:state_selected="true">
<shape>
<solid android:color="@color/white"/>
</shape>
</item>
<item>
<shape>
<solid android:color="@color/light_blue"/>
</shape>
</item> -->
</selector>
【问题讨论】:
-
我假设您使用的是
TabLayout。你在哪里定义你的TabLayout?请显示 XML 代码,以便我们检查。 -
我在代码中使用了操作栏标签
-
我明白了,您是否知道这种导航方式一直是deprecated in API level 21?无论如何,您可以尝试类似:
getActionBar().setStackedBackgroundDrawable(new ColorDrawable(Color.parseColor("#YourFavoriteColorHere")))- 也可以看看这个密切相关的讨论here。 -
背景工作正常我只想在选中时更改文本颜色
标签: android