我已将 a 添加UITapGestureRecognizer
到 an MKMapView
,如下所示:
UITapGestureRecognizer *tapGesture = [[UITapGestureRecognizer alloc]
initWithTarget:self
action:@selector(doStuff:)];
[tapGesture setCancelsTouchesInView:NO];
[tapGesture setDelaysTouchesEnded:NO];
[[self myMap] addGestureRecognizer:tapGesture];
[tapGesture release];
这几乎可行:点击手势被识别,双击仍然缩放地图。不幸的是,这UITapGestureRecognizer
会干扰MKAnnotationView
元素的选择和取消选择,这也是由点击手势触发的。
设置setCancelsTouchesInView
andsetDelaysTouchesEnded
属性没有任何效果。如果我不添加UIGestureRecognizer
.
我错过了什么?
更新:
正如下面 Anna Karenina 所建议的,可以通过YES
在shouldRecognizeSimultaneouslyWithGestureRecognizer:
委托方法中返回来避免这个问题。
此答案中的更多详细信息。