diff --git a/core/java/android/widget/ActionMenuPresenter.java b/core/java/android/widget/ActionMenuPresenter.java index 710d59eba6356..36bce0bdbdeef 100644 --- a/core/java/android/widget/ActionMenuPresenter.java +++ b/core/java/android/widget/ActionMenuPresenter.java @@ -381,12 +381,13 @@ public class ActionMenuPresenter extends BaseMenuPresenter computeMenuItemAnimationInfo(true); final ViewTreeObserver observer = menuViewParent.getViewTreeObserver(); if (observer != null) { - observer.addOnDrawListener(new ViewTreeObserver.OnDrawListener() { + observer.addOnPreDrawListener(new ViewTreeObserver.OnPreDrawListener() { @Override - public void onDraw() { + public boolean onPreDraw() { computeMenuItemAnimationInfo(false); - observer.removeOnDrawListener(this); + observer.removeOnPreDrawListener(this); runItemAnimations(); + return true; } }); }