gpt4 book ai didi

javascript - react native : is it possible to stop PanResponder event inside onPanResponderMove?

转载 作者:行者123 更新时间:2023-12-05 07:08:58 30 4
gpt4 key购买 nike

我想对 View 在其他 View 中拖动 Y 轴的距离添加限制。我的 onPanResponderMove 看起来像这样:

onPanResponderMove: (evt: any, gestureEvent: any) => {
if (y >= 0 && y <= backgroundHeight - 40) {
Animated.event([null, { dx: pan.x, dy: pan.y }], { useNativeDriver: false })(evt, gestureEvent);
} else if (y < 0) {
pan.setValue({ x: pan.x._value, y: 0 });
} else {
pan.setValue({ x: pan.x._value, y: backgroundHeight - 40 });
}
}

所以现在内部 View 在进一步限制滚动并返回时仍然会拖拽(看起来它在摇晃)。我想在遇到这些限制时停止拖拽,但不知道该怎么做。

如果有其他更好的解决方案可以实现,我将非常感谢您的帮助:)

最佳答案

您是否设法让它按照您想要的方式工作?我遇到了你的问题来实现同样的目标,并设法做到了这一点:

onPanResponderMove: (e, gs) => {
if (gs.moveY < yOffset) {
Animated.event([null, {dx: 0, dy: pan.y}], {
useNativeDriver: false,
})(e, gs);
}
},

所以之后没有 else,我的图像在手指出站时保持不变(对我来说是 2D,但看起来是一样的?)。否则,您仍在设置平移值,所以 View 仍在要求移动,不是吗?

关于javascript - react native : is it possible to stop PanResponder event inside onPanResponderMove?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61776211/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com