Plays2
Plays2

Reputation: 1165

Change Android 5.0 Actionbar color

I'm working with the new Lollipop Material Design guidelines and would like to incorporate that nifty navigation drawer animation in my app. I've gotten that far, by using the android.support.v7.app.ActionBarDrawerToggle, but now I'm having difficulty changing the color of said action bar. It stays bright gray no matter what I set the theme to. How would one go about changing the color of the actionbar? This is what my app theme looks like:

//res/values/styles.xml
<style name="AppTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar">

    <item name="android:actionBarStyle">@style/ActionBar</item>
    <item name="android:colorPrimary">@color/primaryDef</item>
    <item name="android:colorPrimaryDark">@color/primaryDarkDef</item>
    <item name="android:activatedBackgroundIndicator">@drawable/defbg</item>
    <item name="android:colorAccent">@color/primaryDef</item>
    <item name="android:navigationBarColor">@color/primaryDarkDef</item>

</style>

<style name="ActionBar" parent="android:Widget.ActionBar">
    <item name="android:background">@color/primaryDef</item>
</style>

Upvotes: 9

Views: 10589

Answers (1)

ianhanniballake
ianhanniballake

Reputation: 199805

AppCompat does not use the android: prefixed attributes for the Material Theme color palette items per the migration guide to v21 by the author of AppCompat. Instead, just use the names themselves:

<style name="AppTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar">

    <item name="colorPrimary">@color/primaryDef</item>
    <item name="colorPrimaryDark">@color/primaryDarkDef</item>
    <item name="colorAccent">@color/primaryDef</item>

    <item name="android:navigationBarColor">@color/primaryDarkDef</item>
    <item name="android:activatedBackgroundIndicator">@drawable/defbg</item>
</style>

The Action Bar will be colored by colorPrimary.

Upvotes: 25

Related Questions