dynamic-animation/src/main/java/androidx/dynamicanimation/animation/AnimationHandler.java
public void addAnimationFrameCallback(final AnimationFrameCallback callback, long delay) {
        if (mAnimationCallbacks.size() == 0) {
            getProvider().postFrameCallback();
        }
        if (!mAnimationCallbacks.contains(callback)) {
            mAnimationCallbacks.add(callback);
        }

        if (delay > 0) {
            mDelayedCallbackStartTime.put(callback, (SystemClock.uptimeMillis() + delay));
        }
    }
/**
     * Register to get a callback on the next frame after the delay.
     */
Register to get a callback on the next frame after the delay.
Register to get a callback on the next frame after the delay .
public void addAnimationFrameCallback(final AnimationFrameCallback callback, long delay) {
        if (mAnimationCallbacks.size() == 0) {
            getProvider().postFrameCallback();
        }
        if (!mAnimationCallbacks.contains(callback)) {
            mAnimationCallbacks.add(callback);
        }
        if (delay > 0) {
            mDelayedCallbackStartTime.put(callback, (SystemClock.uptimeMillis() + delay));
        }
    }
public void addAnimationFrameCallback ( final AnimationFrameCallback callback , long delay ) { if ( mAnimationCallbacks . size ( ) == 0 ) { getProvider ( ) . postFrameCallback ( ) ; } if ( ! mAnimationCallbacks . contains ( callback ) ) { mAnimationCallbacks . add ( callback ) ; } if ( delay > 0 ) { mDelayedCallbackStartTime . put ( callback , ( SystemClock . uptimeMillis ( ) + delay ) ) ; } }
Register to get a callback on the next frame after the delay.
Register to get a callback on the next frame after the delay .