如何在android中改变动作栏部分的颜色

时间:2015-08-14 08:52:03

标签: android android-actionbar styles

我的动作栏标题是2个单词,我想为每个单词使用2种颜色,如下图所示: enter image description here

现在我正在使用这些代码来更改文字颜色:

    <!-- Application theme. -->
    <style name="AppTheme" parent="AppBaseTheme">
        <item name="android:actionBarSize">45dp</item>
        <item name="actionBarSize">45dp</item>


        <item name="android:actionBarStyle">@style/MyActionBar</item>
        <item name="actionBarStyle">@style/MyActionBar</item>
         <item name="android:windowActionBarOverlay">true</item>
    </style>


    <style name="MyActionBar" parent="@style/Widget.AppCompat.Light.ActionBar">
        <item name="android:background">@color/actionbar</item>
        <item name="background">@color/actionbar</item>
        <item name="android:titleTextStyle">@style/MyTheme.ActionBar.TitleTextStyle</item>
        <item name="android:subtitleTextStyle">@style/MyTheme.ActionBar.TitleTextStyle</item>
        <item name="titleTextStyle">@style/MyTheme.ActionBar.TitleTextStyle</item>
        <item name="subtitleTextStyle">@style/MyTheme.ActionBar.TitleTextStyle</item>
     </style>
<style name="MyTheme.ActionBar.TitleTextStyle" parent="@android:style/TextAppearance">
        <item name="android:textColor">@color/white</item>
        <item name="android:textSize">15sp</item>
</style>

但是这些代码会改变两种颜色,所以我该怎么办呢?

1 个答案:

答案 0 :(得分:3)

将其放入oncreate()

String text = "<font color='#F44336'>Your</font><font color='#FF9800'>Title</font>";

        getSupportActionBar().setTitle(Html.fromHtml(text));