我正在尝试返回的值,.measure
但似乎里面的代码在不使用状态的情况下无法交互,因此它一直返回 false。我试图避免使用状态,因为我需要我的值PanResponder
测量函数返回 false
const showRefPosition = assignedRef => {
let maxHeight = false;
assignedRef.measure((x, y, width, height, pageX, pageY) => {
const maxY = SCREEN_HEIGHT - height;
maxHeight = pageY - maxY < 40;
});
console.log("new maxHeight", maxHeight);
return maxHeight;
};
我想要做的是:将元素位置放在PanResponder
我的问题
我试图让元素在 中的位置PanResponder
,但不断得到错误的值(默认值)。或者里面的状态PanResponder
没有更新。
泛响应
const panResponder = useRef(
PanResponder.create({
onMoveShouldSetPanResponder: (event, gestureState) => {
console.log("showRefPosition", showRefPosition(this.AnimatedRef));
if (event.nativeEvent.pageY < 100) {
pan.flattenOffset();
Animated.spring(pan, {
toValue: { x: 0, y: -600 },
}).start();
return false;
}
return Math.abs(gestureState.dy) > Math.abs(gestureState.dx * 3);
},