title: Intercepting/Hijacking iPhone Touch Events for MKMapView
body: <p>Is there a bug in the 3.0 SDK that disables real-time zooming and intercepting the zoom-in gesture for the MKMapView?  I have some real simple code so I can detect tap events, but there are two problems:</p>
  
  <ol>
  <li>zoom-in gesture is always interpreted as a zoom-out</li>
  <li>none of the zoom gestures update the Map's view in realtime.</li>
  </ol>
  
  <p>In hitTest, if I return the "map" view, the MKMapView functionality works great, but I don't get the opportunity to intercept the events.</p>
  
  <p>Any ideas?</p>
  
  <p>MyMapView.h:</p>
  
  <pre><code>@interface MyMapView : MKMapView
  {
      UIView      *map;
  }
  </code></pre>
  
  <p>MyMapView.m:</p>
  
  <pre><code>- (id)initWithFrame:(CGRect)frame
  {
      if (![super initWithFrame:frame])
          return nil;
  
      self.multipleTouchEnabled = true;
  
      return self;
  }
  
  - (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event {
      NSLog(@"Hit Test");
      map = [super hitTest:point withEvent:event];
      return self;
  }
  
  - (void)touchesCancelled:(NSSet *)touches withEvent:(UIEvent *)event
  {
      NSLog(@"%s", __FUNCTION__);
      [map touchesCancelled:touches withEvent:event];
  }
  
  - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent*)event
  {
      NSLog(@"%s", __FUNCTION__);
      [map touchesBegan:touches withEvent:event];
  }
  
  - (void)touchesMoved:(NSSet*)touches withEvent:(UIEvent*)event
  {
      NSLog(@"%s, %x", __FUNCTION__, mViewTouched);
      [map touchesMoved:touches withEvent:event];
  }
  
  - (void)touchesEnded:(NSSet*)touches withEvent:(UIEvent*)event
  {
      NSLog(@"%s, %x", __FUNCTION__, mViewTouched);
      [map touchesEnded:touches withEvent:event];
  }
  </code></pre>