Javascript React-Native Pan应答器与另一组分重叠
我是个新来的土生土长的人,即使经过很多研究,我也无法解决这个问题 我正在尝试用react natives pan responder library记录触摸屏的所有触摸坐标(使用Expo web进行移动使用)。但是,我注意到,pan应答器无法识别按钮等组件上的点击。所有其他触摸都由pan响应者记录 我该怎么做才能让Pan响应者注册屏幕上的每次点击,并调用相应的按钮功能 代码:Javascript React-Native Pan应答器与另一组分重叠,javascript,reactjs,react-native,react-native-web,panresponder,Javascript,Reactjs,React Native,React Native Web,Panresponder,我是个新来的土生土长的人,即使经过很多研究,我也无法解决这个问题 我正在尝试用react natives pan responder library记录触摸屏的所有触摸坐标(使用Expo web进行移动使用)。但是,我注意到,pan应答器无法识别按钮等组件上的点击。所有其他触摸都由pan响应者记录 我该怎么做才能让Pan响应者注册屏幕上的每次点击,并调用相应的按钮功能 代码: import React,{Component}来自“React”; 从“react native”导入{View,Pa
import React,{Component}来自“React”;
从“react native”导入{View,PanResponder,Text,Button};
导出默认类应用程序扩展组件{
panResponder=panResponder.create({
onStartShouldSetPanResponder:(evt,手势状态)=>{
log(“单击坐标(x | y):”,evt.nativeEvent.pageX,evt.nativeEvent.pageY)
},
onStartShouldSetPanResponderCapture:(evt,gestureState)=>()=>{},
onPanResponderGrant:(evt,gestureState)=>{},
onPanResponderRelease:(evt,gestureState)=>{},
})
render(){
返回(
这起作用(pan响应程序被调用)
{console.log(“按下按钮”)}}title=“这不是(pan响应程序无法识别btn点击)”/>
);
}
}
import React, { Component } from "react";
import { View, PanResponder, Text, Button } from "react-native";
export default class App extends Component {
panResponder = PanResponder.create({
onStartShouldSetPanResponder: (evt, gestureState) => {
console.log("clicked coord (x|y):", evt.nativeEvent.pageX, evt.nativeEvent.pageY)
},
onStartShouldSetPanResponderCapture: (evt, gestureState) => () => { },
onPanResponderGrant: (evt, gestureState) => { },
onPanResponderRelease: (evt, gestureState) => { },
})
render() {
return (
<View style={{ flex: 1 }}{...this.panResponder.panHandlers}>
<Text>this works (pan responder gets called)</Text>
<View>
<Button onPress={() => { console.log("button pressed") }} title="this not (pan responder doesn't recognize btn clicks)" />
</View>
</View >
);
}
}