我正在尝试在本机反应中使用 PanResponder 以便在其中心旋转一个框。到目前为止,这是我的代码:
class Spinner extends React.Component {
pan = new Animated.ValueXY();
panResponder = PanResponder.create({
onMoveShouldSetPanResponder: () => true,
onPanResponderGrant: () => {
this.pan.setOffset({
x: this.pan.x._value,
y: this.pan.y._value
});
},
onPanResponderMove: Animated.event([
null,
{ dx: this.pan.x, dy: this.pan.y }
]),
onPanResponderRelease: () => {
this.pan.flattenOffset();
}
});
render() {
const RotateValue = "10deg"
return (
<View style={styles.container}>
<Animated.View
style={{
width:100,
height:300,
transform:[{ rotate: RotateValue }]
}}
{...this.panResponder.panHandlers}
>
<View style={styles.box} />
</Animated.View>
</View>
)
}
}
'''
在这个 const RotateValue 中,我试图使用 this.pan.x 和 this.pan.y 来转换为度数。我放了“10度”来证明它会旋转10度。但是我迷失在如何完成我打算做的事情上。
任何帮助将不胜感激。太感谢了。