diff options
| author | 2014-08-22 10:35:04 -0700 | |
|---|---|---|
| committer | 2014-08-22 12:41:06 -0700 | |
| commit | 14aedd1fbf52f1b844064a15d583ccfbda6ce57d (patch) | |
| tree | be8d0c95a2d6a766eeb26650350d19e4aa0eaf0d /graphics/java | |
| parent | 730e9bceb746e6c50b87cc5a695eb73fea27686e (diff) | |
Fixing AVD animation with startOffset
b/17160751
Change-Id: If030ca04f5a7dd7e732dcc5dfb18d51faa7e7b79
Diffstat (limited to 'graphics/java')
| -rw-r--r-- | graphics/java/android/graphics/drawable/AnimatedVectorDrawable.java | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/graphics/java/android/graphics/drawable/AnimatedVectorDrawable.java b/graphics/java/android/graphics/drawable/AnimatedVectorDrawable.java index 00c92fa57367..a9ebf218a256 100644 --- a/graphics/java/android/graphics/drawable/AnimatedVectorDrawable.java +++ b/graphics/java/android/graphics/drawable/AnimatedVectorDrawable.java @@ -152,7 +152,7 @@ public class AnimatedVectorDrawable extends Drawable implements Animatable { @Override public void draw(Canvas canvas) { mAnimatedVectorState.mVectorDrawable.draw(canvas); - if (isRunning()) { + if (isStarted()) { invalidateSelf(); } } @@ -306,13 +306,25 @@ public class AnimatedVectorDrawable extends Drawable implements Animatable { return false; } + private boolean isStarted() { + final ArrayList<Animator> animators = mAnimatedVectorState.mAnimators; + final int size = animators.size(); + for (int i = 0; i < size; i++) { + final Animator animator = animators.get(i); + if (animator.isStarted()) { + return true; + } + } + return false; + } + @Override public void start() { final ArrayList<Animator> animators = mAnimatedVectorState.mAnimators; final int size = animators.size(); for (int i = 0; i < size; i++) { final Animator animator = animators.get(i); - if (!animator.isRunning()) { + if (!animator.isStarted()) { animator.start(); } } |