在拖动过程中查看MKAnnotation坐标

时间:2016-01-27 21:39:56

标签: ios objective-c mkmapview mkannotation mkannotationview

我希望能够在拖动时跟踪MKAnnotation的坐标。目前,我只是在拖动开始时获取坐标。

我尝试使用MKAnnotationView实现自定义touchesMoved子类,但这似乎不起作用。 (如此处所示:Obtaining MKAnnotation's coordinate while dragging。)

通过在拖动注释时接收新坐标,我将能够更新我的多边形形状。

1 个答案:

答案 0 :(得分:0)

您可以跟踪MKAnnotationView的坐标。

拖动视图时,将调用以下代理。

- (void)mapView:(MKMapView *)mapView annotationView:(MKAnnotationView *)view didChangeDragState:(MKAnnotationViewDragState)newState fromOldState:(MKAnnotationViewDragState)oldState

你可以使用:

if (newState == MKAnnotationViewDragStateDragging) {
    CLLocationCoordinate2D location = [_polyMapView convertPoint:view.center toCoordinateFromView:view.superview];
}

此处_polyMapView将是您的mapView,view将是您的注释视图。这将获得注释的当前坐标。