如何检测MKMapView
实例上的单次点击?我是否必须子类化MKMapView
,然后重写touchesEnded
方法?
谢谢,
-Chris
发布于 2009-11-10 20:27:55
发布于 2011-01-01 04:30:58
如果你只是想在不影响地图的任何其他触摸行为的情况下获得点击手势的通知,你会想要使用UITapGestureRecognizer
。这非常简单,只需输入一些代码,如下所示。
UITapGestureRecognizer* tapRec = [[UITapGestureRecognizer alloc]
initWithTarget:self action:@selector(didTapMap:)];
[theMKMapView addGestureRecognizer:tapRec];
[tapRec release];
每当theMKMapView
接收到轻击手势和所有的挤压,拖动手势仍将像以前一样工作时,它将调用didTapMap
。
发布于 2009-09-18 08:31:48
或者根据你正在尝试做的事情,添加一个MKAnnotation
(图钉,带标注),这样你就有了可以点击的东西--然后你的地图代理将收到一个事件,例如。
mapView:(MKMapView *)mapView annotationView:(MKAnnotationView *)view calloutAccessoryControlTapped:(UIControl *)control
https://stackoverflow.com/questions/1275731
复制相似问题