我正在try 建立一个可拖动的react 本机应用程序与重新激活和手势处理程序时,我试图实现我的可拖动的边界与重新激活的钳子,在我移动可拖动对象后,应用程序崩溃.
我试着实现了我自己的功能,但仍然使应用程序崩溃.
这是我的代码
const Dragable = props => {
const translateX = useSharedValue(props.x);
const translateY = useSharedValue(props.y);
const isGestureActive = useSharedValue(false);
const pan = Gesture.Pan()
.onStart(() => {
isGestureActive.value = true;
})
.onChange((evt) => {
translateX.value += clamp(evt.changeX,0,200);
translateY.value += clamp(evt.changeY,0,200);
})
.onEnd(() => {
isGestureActive.value = false;
})
const animatedStyle = useAnimatedStyle(() => {
const zIndex = isGestureActive.value ? 1000 : 1;
return {
zIndex,
transform: [
{ translateX: translateX.value },
{ translateY: translateY.value },
],
};
});
return (
<GestureDetector gesture={pan}>
<Animated.View style={animatedStyle}>
{some child components}
</Animated.View>
</GestureDetector>
);
};