Reputation: 708
I'm trying to to change the popupMenu / DropDown color of the actionBar:
Here's what I have:
Styles.xml
<style name="Theme.Moy" parent="@style/Theme.AppCompat">
<item name="colorPrimary">@color/red_moy</item>
<item name="colorPrimaryDark">@color/red_moy_satus_bar</item>
<item name="android:popupMenuStyle">@style/PopupMenu.Moy</item>
<item name="android:actionDropDownStyle">@style/myapp_DropDownNav</item>
<item name="android:actionBarWidgetTheme">@style/myapp.actionBarWidgetTheme</item>
</style>
<style name="myapp.actionBarWidgetTheme" parent="Theme.Moy">
<item name="android:spinnerDropDownItemStyle">@style/myapp.Widget.DropDownItem.Spinner</item>
</style>
<style name="PopupMenu.Moy" parent="@style/Widget.AppCompat.PopupMenu">
<item name="android:popupBackground">@color/red_moy_satus_bar</item>
</style>
<style name="myapp_DropDownNav" parent="@style/Widget.AppCompat.Spinner.DropDown.ActionBar">
<item name="background">@drawable/menu_dropdown_panel_moy</item>
<item name="android:background">@drawable/menu_dropdown_panel_moy</item>
<item name="android:popupBackground">@drawable/menu_dropdown_panel_moy</item>
<item name="android:dropDownSelector">@drawable/menu_dropdown_panel_moy</item>
</style>
<style name="myapp.Widget.DropDownItem.Spinner" parent="Widget.AppCompat.DropDownItem.Spinner">
<item name="android:textAppearance">@style/myapp.TextAppearance.Widget.DropDownItem</item>
</style>
<style name="myapp.TextAppearance.Widget.DropDownItem" parent="TextAppearance.AppCompat.Widget.DropDownItem">
<item name="android:textColor">@color/gray_background_moy</item>
</style>
Styles.xml values-v14
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="Theme.Moy" parent="@style/Theme.AppCompat">
<item name="colorPrimary">@color/red_moy</item>
<item name="colorPrimaryDark">@color/red_moy_satus_bar</item>
<item name="android:popupMenuStyle">@style/PopupMenu.Moy</item>
<item name="android:actionDropDownStyle">@style/myapp_DropDownNav</item>
<item name="android:actionBarWidgetTheme">@style/myapp.actionBarWidgetTheme</item>
</style>
<style name="myapp.actionBarWidgetTheme" parent="Theme.Moy">
<item name="android:spinnerDropDownItemStyle">@style/myapp.Widget.DropDownItem.Spinner</item>
</style>
<style name="PopupMenu.Moy" parent="@style/Widget.AppCompat.PopupMenu">
<item name="android:popupBackground">@color/red_moy_satus_bar</item>
</style>
<style name="myapp_DropDownNav" parent="@style/Widget.AppCompat.Spinner.DropDown.ActionBar">
<item name="background">@drawable/menu_dropdown_panel_moy</item>
<item name="android:background">@drawable/menu_dropdown_panel_moy</item>
<item name="android:popupBackground">@drawable/menu_dropdown_panel_moy</item>
<item name="android:dropDownSelector">@drawable/menu_dropdown_panel_moy</item>
</style>
<style name="myapp.Widget.DropDownItem.Spinner" parent="Widget.AppCompat.DropDownItem.Spinner">
<item name="android:textAppearance">@style/myapp.TextAppearance.Widget.DropDownItem</item>
</style>
<style name="myapp.TextAppearance.Widget.DropDownItem" parent="TextAppearance.AppCompat.Widget.DropDownItem">
<item name="android:textColor">@color/gray_background_moy</item>
</style>
It's supposed to be red, but it's still dark grey (default)
Thanks for your help!
Upvotes: 0
Views: 3151
Reputation: 2504
Theme.Appcompat in appcompat-v7 V21 uses its own properties for the ActionBar, that is without android:
prefix. Edit them to popupMenuStyle, actionDropDownStyle, and actionBarWidgetTheme.
Upvotes: 2