我在这里挣扎于 React Native Animations。结果很简单,我有一个 Animated.Image 想要旋转。
一切都很好,直到我想通过动画循环 n 次并在它停止时做一些事情。
我有以下代码。
Animated.loop(
Animated.timing(this.state.spin, {
toValue: 360,
duration: 1000,
easing: Easing.linear,
useNativeDriver: true,
}), {
iterations: 3
}
).start(() => {
console.log('done');
});
它按照循环迭代旋转 3 次,但动画结束时没有触发回调。
这是复制此内容的世博会:https://snack.expo.io/S1PjnfB9-
最佳答案
试试下面的代码
Animated.loop(
Animated.timing(this.state.spin, {
toValue: 360,
duration: 1000,
easing: Easing.linear,
useNativeDriver: true,
}), {
iterations: 3
}
).start(event => {
if (event.finished) {
console.log('finished');
}
});
我刚刚添加了对事件响应的检查。
希望能帮助到你。
关于react-native - React Native Animated Loop 开始回调,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46165913/