2

Below is my style:

 <style name="AppBaseTheme" parent="Theme.AppCompat.Light">
        <!-- <item name="windowActionBar">false</item> -->
    </style>

    <style name="AppTheme" parent="AppBaseTheme">
        <item name="actionOverflowMenuStyle">@style/OverflowMenu</item>
        <!-- <item name="actionBarStyle">@style/Theme.MyApp.ActionBar</item> -->
    </style>
 <style name="OverflowMenu" parent="Widget.AppCompat.PopupMenu.Overflow">

        <!-- Required for pre-Lollipop. -->
        <item name="overlapAnchor">false</item>

        <!-- Required for Lollipop. -->
        <!-- <item name="android:overlapAnchor">false</item> -->
    </style>

I'm using ActionBarActivity from the appcompact support library to change the overflowbutton color.

  <style name="AppTheme" parent="AppBaseTheme">
        <item name="actionOverflowMenuStyle">@style/OverflowMenu</item>
        <item name="android:actionOverflowButtonStyle">@style/OverFlowStyle</item>

        <!-- <item name="actionBarStyle">@style/Theme.MyApp.ActionBar</item> -->
    </style>

    <style name="OverFlowStyle" parent="Widget.AppCompat.ActionButton.Overflow">
        <item name="android:src">@drawable/ic_empty</item>
    </style>
Siri
  • 701
  • 1
  • 6
  • 27
  • for my app I just change de parent of AppTheme Theme.AppCompat.Light.DarkActionBar by Theme.AppCompat.Light or or the contrary – JFouad Oct 04 '15 at 11:28

4 Answers4

3
    <style name="OverFlowStyle" parent="@style/Widget.AppCompat.Light.ActionButton.Overflow">
            <item name="android:src">@drawable/green_overflow</item>
        </style>
    <style name="AppTheme" parent="AppBaseTheme">
    <item name="actionOverflowButtonStyle">@style/OverFlowStyle</item>
            <item name="android:actionOverflowButtonStyle">@style/OverFlowStyle</item>
</style>
KSP
  • 83
  • 1
  • 8
1

As a comment in your styles implies, android: prefix is required for lollipop. Have you tried adding it to the actionOverflowMenuStyle attribute too?

<item name="android:actionOverflowButtonStyle">@style/OverflowMenu</item>
<item name="actionOverflowButtonStyle">@style/OverflowMenu</item>
Simas
  • 43,548
  • 10
  • 88
  • 116
1

For android version < 21 it should be like this.

<style name="AppTheme" parent="AppBaseTheme">

         ...
     <item name="actionOverflowButtonStyle">@style/OverFlowStyle</item>
</style>

<style name="OverFlowStyle" parent="Widget.AppCompat.ActionButton.Overflow">
    <item name="android:src">@drawable/ic_empty</item>
</style>
Pooja
  • 2,417
  • 20
  • 39
1

With toolbar, none of the above worked for me and I had to change it via code, using the below:

public static void setOverflowButtonColor(final Activity activity) {
    final String overflowDescription = activity.getString(R.string.abc_action_menu_overflow_description);
    final ViewGroup decorView = (ViewGroup) activity.getWindow().getDecorView();
    final ViewTreeObserver viewTreeObserver = decorView.getViewTreeObserver();
    viewTreeObserver.addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
        @Override
        public void onGlobalLayout() {
            final ArrayList<View> outViews = new ArrayList<View>();
            decorView.findViewsWithText(outViews, overflowDescription,
                    View.FIND_VIEWS_WITH_CONTENT_DESCRIPTION);
            if (outViews.isEmpty()) {
                return;
            }
            TintImageView overflow=(TintImageView) outViews.get(0);
            overflow.setColorFilter(Color.CYAN);
            removeOnGlobalLayoutListener(decorView,this);
        }
    });
}

Complete source.

Community
  • 1
  • 1
Atul O Holic
  • 6,692
  • 4
  • 39
  • 74