0

我正在研究 MapView 并且我想在 annotationView 上添加 longGesture 以删除特定的注释,为此我在委托中的每个 annotationView 上添加了 longGesture - (MKAnnotationView *)mapView:(MKMapView *)mapview viewForAnnotation:(id )annotation

但是 annoattaionView 没有检测到长手势。有没有办法在 mapview 的 AnnotationView 上添加长手势?

4

1 回答 1

2

问题是MKAnnotationView已经有一个长的手势识别器来拖动它,因此根据持续时间(不确定拖动的持续时间),它将转到那个手势识别器,如果你不需要拖动,你可以简单地删除那个长手势识别器通过获取视图的所有手势识别器然后执行isKindOfClassfor UILongGesture,删除它然后添加你自己的。

UILongGesture或者尝试在可能工作的低时间。

如果您不需要 MKAnnotationView 手势识别器的默认行为,您也可以像这样禁用注释视图:

[myAnnotationView setEnabled:NO];然后将您的识别器添加到注释视图。

希望有帮助。

于 2012-08-22T14:25:40.967 回答