title: How can I allow multiple long-press gestures simultaneously on an iPad?
body: <p>I currently have a few drag-and-drop'able layers linked to UILabels. I have a LongPressRecognizer picking up long-presses on the labels, and moving the layers with the labels being dragged around.</p>
  
  <p>I've implemented this by catching gestures in the recognizer's target like such:</p>
  
  <pre><code>- (void)handleDragging:(UILongPressGestureRecognizer *)gestureRecognizer
  {
      switch ([gestureRecognizer state]) 
      {
          case UIGestureRecognizerStateBegan:
              [self startDragging:gestureRecognizer];
              break;
          case UIGestureRecognizerStateChanged:
              [self doDrag:gestureRecognizer];
              break;
          case UIGestureRecognizerStateEnded:
          case UIGestureRecognizerStateCancelled:
          case UIGestureRecognizerStateFailed:
              [self stopDragging:gestureRecognizer];
              break;
          default:
              break;
      }
  }
  </code></pre>
  
  <p>However, I'd like to enable a user to, while they are dragging one label, have the ability to perform an additional long-press on another label to drag multiple labels simultaneously. As the recognizer currently accepts 1 touch (numberOfTouchesRequired = 1), it doesn't seem to be able to pick up additional events. However, the gestureRecognizerStateChanged event is fired every time another touch event occurs on the iPad. numberOfTouches on the recognizer still shows a single touch, however.</p>
  
  <p>Is giving each label its own LongPressRecognizer the best solution, or is there something more elegant I can do with a single recognizer?</p>