title: onStartShouldSetPanResponder vs onMoveShouldSetPanResponder in React Native
body: <p>I'm working with the PanResponder in React Native, and am considering the scenario in which I click an <code>Animated.View</code> and drag it. I have the following code:</p>
  
  <pre><code>this.panResponder = PanResponder.create({
    onStartShouldSetPanResponder: () =&gt; true,
    onMoveShouldSetPanResponder: () =&gt; true,
    onPanResponderGrant: () =&gt; {
      this.animatedValue.setOffset({
        x: this._value.x,
        y: this._value.y,
      })
      this.animatedValue.setValue({ x: 0, y: 0})
    },
    onPanResponderMove: Animated.event([
      null,
      {
        dx: this.animatedValue.x,
        dy: this.animatedValue.y
      }
    ])
  })
  </code></pre>
  
  <p>My questions are:</p>
  
  <p>1) If I click the <code>Animated.View</code> that the PanResponder is attached to, I know that <code>onStartShouldSetPanResponder: () =&gt; true</code> causes the <code>Animated.View</code> to become a responder to this gesture, but does <code>onMoveShouldSetPanResponder: () =&gt; true</code> cause it to 're-become' a responder on every subsequent increment of the drag gesture?</p>
  
  <p>2) Does <code>onPanResponderGrant()</code> get called only when I first click the <code>Animated.View</code>, or does it also get called on every subsequent increment of the drag gesture?</p>
  
  <p>3) In <code>onPanResponderMove</code>, are <code>dx</code> and <code>dy</code> the total accumulated distances from the beginning of the touch, or are they the small increments corresponding to the individual increment of the current drag gesture? ie. If I've dragged the <code>Animated.View</code> a total of <code>100px</code> in the <code>x</code> direction, would <code>dx</code> by <code>100px</code> or would it be something like <code>1px</code> for the current increment of the drag gesture?</p>
  
  <p>If you can give me some insight on ANY of these, that would be great.</p>
  
  <p>Thanks!</p>