改变ActionBar文本颜色

4

我想将我的ActionBar颜色改成蓝色(#0c01e3)。我的代码能够工作,因为actionbar背景属性已经起到了作用。但是文本不会更改。有任何想法吗?我正在使用ABS。

<style name="MyActionBar1" parent="Widget.Sherlock.Light.ActionBar.Solid.Inverse">
        <item name="android:backgroundSplit">#06e301</item>
        <item name="android:backgroundStacked">#06e301</item>
        <item name="android:background">#06e301</item>
        <item name="background">#06e301</item>
        <item name="backgroundSplit">#B9001F</item>
        <item name="android:textColor">#0c01e3</item>
        >

enter image description here

Update

:

enter image description here


您想要修改哪个文本?您是要修改ActionItems、选项卡还是下拉列表的文本? - Marco RS
1
看看这篇帖子:https://dev59.com/Imkv5IYBdhLWcg3wxzyA - Marco RS
看起来我需要省略前面的“android:”,但是我会收到一个错误。我现在正在使用一张图片更新我的问题。 - EGHDK
可能是ActionBar文本颜色的重复问题。 - Sam
5个回答

2

将这个设置放在你的Java页面中。这对我有效。

ActionBar ab = getActionBar();    
 ab.setTitle(Html.fromHtml("<font color='#ffffff'>App Name</font>"));

1

添加这个然后尝试

    <item name="android:textColor">#ffffff</item>

1
关于主题,有一个属性叫做actionItemTextColor,它控制着这个颜色。
在使用ActionBarSherlock时,请记得同时指定带有和不带有android:前缀。

<item name="android:actionItemTextColor">#ffffff</item> 不起作用。你是让我进入 ABS 主题并更改它吗? - EGHDK
actionbarsherlock.com已经足够应付了。 - EGHDK

0

如果你想使用xml来改变它...这是对我有效的方法...

<style name="MyActionBar"
    parent="@style/Widget.AppCompat.Light.ActionBar.Solid.Inverse">
    <item name="android:background">@color/titleBarBgColor</item>
    <item name="android:titleTextStyle">@style/EldTheme.ActionBar.TitleTextStyle</item>
    <item name="android:subtitleTextStyle">@style/EldTheme.ActionBar.TitleTextStyle</item>
    <!-- Support library compatibility -->
    <item name="background">@color/titleBarBgColor</item>
    <item name="titleTextStyle">@style/EldTheme.ActionBar.TitleTextStyle</item>
    <item name="subtitleTextStyle">@style/EldTheme.ActionBar.TitleTextStyle</item>
</style>
<style name="EldTheme.ActionBar.TitleTextStyle" parent="@style/TextAppearance.AppCompat.Widget.ActionBar.Title">
    <item name="android:textColor">@color/titleBarTextColor</item>
</style>

0
为了改进@IntelliJ Amiya的答案:
    getActionBar().setTitle(
            Html.fromHtml("<font color='" + getResources().getColor(R.color.my_color) + "'>"
                    + getString(R.string.title_home) + "</font>"));

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