title: TouchesEnded Not Getting Called 2nd Time
body: <p>My problem is as follows:</p>
  
  <p>I'm displaying a message view with an attachment, in a standard view controller. When the user presses and holds the attachment icon it show the image on screen, when the user lets go the image disappears. This is to aid detecting screenshots while the user is viewing the image.</p>
  
  <p>I use a long press gesture recognizer to detect the touch and then touchesEnded or touchesCancelled to detect the release of the touch.</p>
  
  <p>My problem occurs when the user presses the screen with a second finger, as the release of the second touch is not reported. The code is below, the methods get called in this order:</p>
  
  <ol>
  <li>First long press -> attachmentLongPressed called</li>
  <li>Second long press -> attachmentLongPressed called</li>
  <li>Release first finger -> touchesEnded called</li>
  <li><p>Release second finger -> nothing called</p>
  
  <pre><code>-(void)attachmentImageLongPressed:(UIImageView *)sender{
  
      if(!self.isAttachmentOpen){
  
          [self setAttachmentOpen:YES];
  
          // Show image...
  
      }
  }
  
  -(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event{
  
      [self setAttachmentOpen:NO];
  
      // Remove image from view
  
  }
  
  -(void)touchesCancelled:(NSSet *)touches withEvent:(UIEvent *)event
  {
      if(self.isAttachmentOpen){
  
          [self screenshotDetected];
  
      }
  }
  </code></pre></li>
  </ol>
  
  <p>The result is that the image view is left on screen with no way to dismiss it. Anybody have any suggestions?</p>