在ActionBarActivity中更改标签文本的颜色

问题描述:

我有一个应用程序使用支持ActionBarActivity (android.support.v7.app.ActionBarActivity),与标签。我使用了Action Bar Style Generator来改变应用程序的外观,但现在我很难让标签文本的颜色发生改变。在ActionBarActivity中更改标签文本的颜色

该风格正在通过manifest应用,并显示了很好,除了标签文本颜色保持黑色无论我尝试。下面是我在我的自定义样式的XML文件现在:

<?xml version="1.0" encoding="utf-8"?> 
<resources> 

    <style name="Theme.StyledActionBar" parent="@style/Theme.AppCompat.Light"> 
     <item name="actionBarItemBackground">@drawable/selectable_background_StyledActionBar</item> 
     <item name="popupMenuStyle">@style/PopupMenu.StyledActionBar</item> 
     <item name="dropDownListViewStyle">@style/DropDownListView.StyledActionBar</item> 
     <item name="actionBarTabStyle">@style/ActionBarTabStyle.StyledActionBar</item> 
     <item name="actionDropDownStyle">@style/DropDownNav.StyledActionBar</item> 
     <item name="actionBarStyle">@style/ActionBar.Solid.StyledActionBar</item> 
     <item name="actionModeBackground">@drawable/cab_background_top_StyledActionBar</item> 
     <item name="actionModeSplitBackground">@drawable/cab_background_bottom_StyledActionBar</item> 
     <item name="actionModeCloseButtonStyle">@style/ActionButton.CloseMode.StyledActionBar</item> 
     <item name="actionBarTabTextStyle">@style/TabTextStyle</item> 
     <item name="android:actionBarTabTextStyle">@style/TabTextStyle</item> 
    </style> 

    <style name="TabTextStyle" parent="@style/Widget.AppCompat.ActionBar.TabText"> 
     <item name="android:textColor">@android:color/white</item> 
    </style> 


    <style name="ActionBar.Solid.StyledActionBar" parent="@style/Widget.AppCompat.Light.ActionBar.Solid"> 
     <item name="background">@drawable/ab_solid_StyledActionBar</item> 
     <item name="backgroundStacked">@drawable/ab_stacked_solid_StyledActionBar</item> 
     <item name="backgroundSplit">@drawable/ab_bottom_solid_StyledActionBar</item> 
     <item name="progressBarStyle">@style/ProgressBar.StyledActionBar</item> 
    </style> 

    <style name="ActionBar.Transparent.StyledActionBar" parent="@style/Widget.AppCompat.Light.ActionBar"> 
     <item name="background">@drawable/ab_transparent_StyledActionBar</item> 
     <item name="progressBarStyle">@style/ProgressBar.StyledActionBar</item> 
    </style> 

    <style name="PopupMenu.StyledActionBar" parent="@style/Widget.AppCompat.Light.PopupMenu"> 
     <item name="android:popupBackground">@drawable/menu_dropdown_panel_StyledActionBar</item> 
    </style> 

    <style name="DropDownListView.StyledActionBar" parent="@style/Widget.AppCompat.Light.ListView.DropDown"> 
     <item name="android:listSelector">@drawable/selectable_background_StyledActionBar</item> 
    </style> 

    <style name="ActionBarTabStyle.StyledActionBar" parent="@style/Widget.AppCompat.Light.ActionBar.TabView"> 
     <item name="android:background">@drawable/tab_indicator_ab_StyledActionBar</item> 
    </style> 

    <style name="DropDownNav.StyledActionBar" parent="@style/Widget.AppCompat.Light.Spinner.DropDown.ActionBar"> 
     <item name="android:background">@drawable/spinner_background_ab_StyledActionBar</item> 
     <item name="android:popupBackground">@drawable/menu_dropdown_panel_StyledActionBar</item> 
     <item name="android:dropDownSelector">@drawable/selectable_background_StyledActionBar</item> 
    </style> 

    <style name="ProgressBar.StyledActionBar" parent="@style/Widget.AppCompat.ProgressBar.Horizontal"> 
     <item name="android:progressDrawable">@drawable/progress_horizontal_StyledActionBar</item> 
    </style> 

    <style name="ActionButton.CloseMode.StyledActionBar" parent="@style/Widget.AppCompat.Light.ActionButton.CloseMode"> 
     <item name="android:background">@drawable/btn_cab_done_StyledActionBar</item> 
    </style> 

    <!-- this style is only referenced in a Light.DarkActionBar based theme --> 
    <style name="Theme.StyledActionBar.Widget" parent="@style/Theme.AppCompat"> 
     <item name="popupMenuStyle">@style/PopupMenu.StyledActionBar</item> 
     <item name="dropDownListViewStyle">@style/DropDownListView.StyledActionBar</item> 
    </style> 

</resources> 

正如你所看到的,我试图改变颜色为白色,但没有效果。我也试图改变操作栏的标题颜色,但放弃了,因为我找到了Java解决方法。

+0

切换到AppCompatActivity和TabLayout,并看看这个答案:http://stackoverflow.com/a/31153743/4409409 –

+0

至于使用ActionBar选项卡,尝试添加'android:'使它成为' @ style/TabTextStyle'See here:http://stackoverflow.com/a/24605444/4409409 –

ActionBarActivity已弃用。

并且使用的是Theme.AppCompatActionBarActivity is deprecated

尝试使用你的java代码(ActivityAppCompatActivity

+0

我很欣赏这个输入。同时,是否有保留ActionBarActivity的解决方案? – SJonesGSO