如何检测用户在本机反应中触摸某个元素?

时间:2019-07-06 07:03:05

标签: react-native touch

我了解在React Native中我们有:  -OnPress(检测按下并释放)  -OnPressIn(检测用户从不触摸变为触摸按钮)  -OnPressOut(检测用户释放按钮或将手指移到其他位置)

但是我想检测用户何时已经在其他地方触摸屏幕,然后将手指拖到按钮上。

1 个答案:

答案 0 :(得分:1)

您可以使用PanResponder API对触摸和手势进行细粒度的控制。创建PanHandlers并将其附加到要检测触摸的View上。

对于检测拖动的用例,可以使用onPanResponderMove

onPanResponderMove: (evt, gestureState) => {
    // The most recent move distance is gestureState.move{X,Y}
    // The accumulated gesture distance since becoming responder is
    // gestureState.d{x,y}
  }

使用dxdy获取在X和Y轴上拖动的距离。

这是PanResponder上的documentation