MKAnnotationView上的UILongPressGestureRecognizer不适用于单点触控

我一直在尝试在MKAnnotationView子类中使用MKAnnotationView 。 有趣的是,手势识别器仅在使用两个手指/触摸时触发。

什么阻止手势识别器只用一次触摸就能触发?

履行

 UILongPressGestureRecognizer *pressRecognizer = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(handleLongPress:)]; pressRecognizer.minimumPressDuration = 0.25; pressRecognizer.numberOfTapsRequired = 0; pressRecognizer.numberOfTouchesRequired = 1; 

普通UIView中的相同实现显示了单触操作的预期行为。 然而,有可能使用touchesBegan:touchesEnded:为了获得长按手势,我仍然很好奇这是什么原因。

你看过这个问题吗?

为了使用我的UILongPressGestureRecognizer,我禁用了AnnotationView并为其添加了GestureRecognizer:

 [ann_view setEnabled:NO]; UILongPressGestureRecognizer* long_press = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(longPressAnnotationView:)]; long_press.minimumPressDuration = 1.5; [ann_view addGestureRecognizer:long_press]; [long_press release];