我需要在用户点击MKMapView的位置放置一个图钉。请求共享任何用于此目的的想法/线索/链接。感谢。
答案 0 :(得分:0)
您可以使用UITapRecognizer
。在手势处理程序中,您可以访问用户使用的坐标
CGPoint touchLocation = [gesture locationInView:mapView];
CLLocationCoordinate2D coordinate = [mapView convertPoint:touchLocation toCoordinateFromView:mapView];
您可以使用此坐标创建注释。为此,您必须定义符合MKAnnotation
协议的类。创建并将其实例添加到mapView。
在委托方法mapView:viewForAnnotation:
中,为注释创建并返回MKPinAnnotationView
的实例。
但是有警告。在手势处理程序中添加注释可能不是最佳移动,因为手势处理程序不知道选择注释视图。要解决此问题,您可以使用performSelector:withObject:afterDelay:
来安排添加。如果调用了委托方法mapView:didSelectAnnotationView:
,则取消执行请求。