diff options
author | 2013-07-25 21:46:49 +0000 | |
---|---|---|
committer | 2013-07-25 21:46:49 +0000 | |
commit | d547bcec5634f99195a2b12522b6977f61c40d55 (patch) | |
tree | c488f17daba80286083385e9a74431c59f0f4421 | |
parent | 03bd832461d02675d5a4c6a9c072bed18e81781e (diff) | |
parent | d40acfb89e3222e8da516254341a9489de7fd07b (diff) |
Merge "Return the actual interpolator of the ViewPropertyAnimator"
-rw-r--r-- | core/java/android/view/ViewPropertyAnimator.java | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/core/java/android/view/ViewPropertyAnimator.java b/core/java/android/view/ViewPropertyAnimator.java index 71a85bc7a2f5..e6bf420acccc 100644 --- a/core/java/android/view/ViewPropertyAnimator.java +++ b/core/java/android/view/ViewPropertyAnimator.java @@ -98,6 +98,12 @@ public class ViewPropertyAnimator { private Animator.AnimatorListener mListener = null; /** + * A lazily-created ValueAnimator used in order to get some default animator properties + * (duration, start delay, interpolator, etc.). + */ + private ValueAnimator mTempValueAnimator; + + /** * This listener is the mechanism by which the underlying Animator causes changes to the * properties currently being animated, as well as the cleanup after an animation is * complete. @@ -268,7 +274,10 @@ public class ViewPropertyAnimator { } else { // Just return the default from ValueAnimator, since that's what we'd get if // the value has not been set otherwise - return new ValueAnimator().getDuration(); + if (mTempValueAnimator == null) { + mTempValueAnimator = new ValueAnimator(); + } + return mTempValueAnimator.getDuration(); } } @@ -328,7 +337,16 @@ public class ViewPropertyAnimator { * @return The timing interpolator for this animation. */ public TimeInterpolator getInterpolator() { - return null; + if (mInterpolatorSet) { + return mInterpolator; + } else { + // Just return the default from ValueAnimator, since that's what we'd get if + // the value has not been set otherwise + if (mTempValueAnimator == null) { + mTempValueAnimator = new ValueAnimator(); + } + return mTempValueAnimator.getInterpolator(); + } } /** |