The essense of Animated.delay
internals is that it creates an Animated.timing
that does nothing but wait. The main purpose is for using with composing animations in stagger
, or sequence
.
The other option is to pass in your delay to the animation config when you call it but using Animated.delay
is the other option.
Here are 2 equivalent animations
this._animatedValue = new Animated.Value(0); Animated.timing(this._animatedValue, { toValue: 100, delay: 300, duration: 500, }).start();
this._animatedValue = new Animated.Value(0); Animated.sequence([ Animated.delay(300), Animated.timing(this._animatedValue, { toValue: 100, duration: 500, }), ]).start();
In the first we are passing the delay in. In the second we are composing 2 animations, one of those animations is just the Animated.delay
of 300
milliseconds.