如何检测屏幕的右半部分是否已在反应原生中被点击?

时间:2015-07-25 13:47:25

标签: ios reactjs react-native

最初我打算创建一个大小为屏幕一半的视图组件并将其包装在TouchableHighlight中,但这看起来很混乱。

2 个答案:

答案 0 :(得分:1)

看看Gesture Responder系统,它可以让你设置一个视图来反应:

http://facebook.github.io/react-native/docs/gesture-responder-system.html#content

具体来说,如果您向视图传递onStartShouldSetResponder道具,这是一个返回true的函数。然后,您还可以传递onResponderGrant函数作为支柱,它将接收包含您需要的详细信息的事件对象。

答案 1 :(得分:0)

修正了它。

我在元素中添加了一个包装器<View {...this.panResponder.panHandlers}>并填充了onPanResponderGrant函数:

    onPanResponderGrant: ({ nativeEvent: { touches } }, { x0, y0, moveX }) =>{

    // if on right side of screen
    if (x0 > (Dimensions.get('window').width / 2)){
      _this.nextPhoto();
    } 
  }