【发布时间】:2021-11-07 21:36:39
【问题描述】:
我有一个 Pressable 组件,里面有一个图标。我想按下它并将它旋转 180 度。但动画只运行一次。当我再次单击时,没有任何反应。
const animation = useSharedValue(0);
const rotation = useDerivedValue(() => {
return interpolate(animation.value, [0, 180], [0, 65]);
});
const animationStyle = useAnimatedStyle(() => {
return {
transform: [
{
rotate: rotation.value + "deg",
},
],
};
});
const startAnimation = () => {
setShowDetail(!showDetail);
animation.value = withTiming(500, {
duration: 300,
});
};
在组件中
<Animated.View style={[animationStyle]}>
<Icons/>
</Animated.View>
【问题讨论】:
标签: react-native react-animated react-native-reanimated