Merge "New public API for calculating the total duration of an animation"
This commit is contained in:
@@ -2876,6 +2876,7 @@ package android.animation {
|
||||
method public android.animation.TimeInterpolator getInterpolator();
|
||||
method public java.util.ArrayList<android.animation.Animator.AnimatorListener> getListeners();
|
||||
method public abstract long getStartDelay();
|
||||
method public long getTotalDuration();
|
||||
method public boolean isPaused();
|
||||
method public abstract boolean isRunning();
|
||||
method public boolean isStarted();
|
||||
@@ -2891,6 +2892,7 @@ package android.animation {
|
||||
method public void setupEndValues();
|
||||
method public void setupStartValues();
|
||||
method public void start();
|
||||
field public static final long DURATION_INFINITE = -1L; // 0xffffffffffffffffL
|
||||
}
|
||||
|
||||
public static abstract interface Animator.AnimatorListener {
|
||||
|
||||
@@ -2975,6 +2975,7 @@ package android.animation {
|
||||
method public android.animation.TimeInterpolator getInterpolator();
|
||||
method public java.util.ArrayList<android.animation.Animator.AnimatorListener> getListeners();
|
||||
method public abstract long getStartDelay();
|
||||
method public long getTotalDuration();
|
||||
method public boolean isPaused();
|
||||
method public abstract boolean isRunning();
|
||||
method public boolean isStarted();
|
||||
@@ -2990,6 +2991,7 @@ package android.animation {
|
||||
method public void setupEndValues();
|
||||
method public void setupStartValues();
|
||||
method public void start();
|
||||
field public static final long DURATION_INFINITE = -1L; // 0xffffffffffffffffL
|
||||
}
|
||||
|
||||
public static abstract interface Animator.AnimatorListener {
|
||||
|
||||
@@ -28,7 +28,6 @@ public abstract class Animator implements Cloneable {
|
||||
|
||||
/**
|
||||
* The value used to indicate infinite duration (e.g. when Animators repeat infinitely).
|
||||
* @hide
|
||||
*/
|
||||
public static final long DURATION_INFINITE = -1;
|
||||
/**
|
||||
@@ -191,11 +190,18 @@ public abstract class Animator implements Cloneable {
|
||||
/**
|
||||
* Gets the total duration of the animation, accounting for animation sequences, start delay,
|
||||
* and repeating. Return {@link #DURATION_INFINITE} if the duration is infinite.
|
||||
* @hide
|
||||
* TODO: Unhide
|
||||
*
|
||||
* @return Total time an animation takes to finish, starting from the time {@link #start()}
|
||||
* is called. {@link #DURATION_INFINITE} will be returned if the animation or any
|
||||
* child animation repeats infinite times.
|
||||
*/
|
||||
public long getTotalDuration() {
|
||||
return getStartDelay() + getDuration();
|
||||
long duration = getDuration();
|
||||
if (duration == DURATION_INFINITE) {
|
||||
return DURATION_INFINITE;
|
||||
} else {
|
||||
return getStartDelay() + duration;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -1030,9 +1030,6 @@ public final class AnimatorSet extends Animator {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @hide
|
||||
*/
|
||||
@Override
|
||||
public long getTotalDuration() {
|
||||
updateAnimatorsDuration();
|
||||
|
||||
@@ -536,9 +536,6 @@ public class ValueAnimator extends Animator implements AnimationHandler.Animatio
|
||||
return mDuration;
|
||||
}
|
||||
|
||||
/**
|
||||
* @hide
|
||||
*/
|
||||
@Override
|
||||
public long getTotalDuration() {
|
||||
if (mRepeatCount == INFINITE) {
|
||||
|
||||
@@ -336,9 +336,6 @@ public class RenderNodeAnimator extends Animator {
|
||||
return mUnscaledDuration;
|
||||
}
|
||||
|
||||
/**
|
||||
* @hide
|
||||
*/
|
||||
@Override
|
||||
public long getTotalDuration() {
|
||||
return mUnscaledDuration + mUnscaledStartDelay;
|
||||
|
||||
Reference in New Issue
Block a user