我如何获得用户在mapView上做一个longhold(例如2s)的点的纬度和经度。
我偶然发现了一个类似的问题:get coordinates on tap in iphone application
但我不明白如何在mapView上处理触摸事件。
我打算将针脚注释放到该位置,通过Google API进行必要的反向地理编码并将其显示在字幕上。首先,我需要获得所需的坐标。
非常感谢例子。
感谢。
答案 0 :(得分:4)
您可以将从手势检索到的视图中的触摸坐标转换为gps坐标,如下所示......
- (void)mapLongPress:(UILongPressGestureRecognizer *)gestureRecognizer{
if(gestureRecognizer.state == UIGestureRecognizerStateBegan){
CGPoint touchLocation = [gestureRecognizer locationInView:mapView];
CLLocationCoordinate2D coordinate;
coordinate = [mapView convertPoint:touchLocation toCoordinateFromView:mapView];
}
}
请注意,在我的示例中,我将手势应用于mapView本身。您必须将应用手势的视图传递给toCoordinateFromView:mapView