当用户平移并移动地图时,如何将MKAnnotation视图图像固定在地图中心(iOS 6)?

时间:2013-02-12 00:53:05

标签: ios6 mapkit mkannotationview

使用iOS 6 MapKit,我想定义一个MKAnnotation(例如一个pin或一个自定义),当用户移动地图时,它会固定在地图视图的中心。一旦用户停止移动地图,我希望能够读取注释的新坐标。我怎样才能做到这一点?

由于

2 个答案:

答案 0 :(得分:2)

最简单的方法是将自定义UIView作为子视图添加到MKMapView中。这意味着当您的用户移动地图时,它将保持不变。您很可能必须通过触摸事件,以便用户可以移动您的自定义视图,但稍后会担心。

当地图视图停止移动时,请使用其中心坐标。 MKMapView可以根据其中心等[mapView centerCoordinate];

计算其坐标

答案 1 :(得分:0)

我知道这有点老了,但我建议您DSCenterPinMapView

这是一个自定义MapView,带有一个动画且可自定义的中心图钉,可用于选择地图中的位置。

您应该安装Pod,然后作为问题的解决方案,您应该实现委托,以便获得销钉掉落的位置。

pinMapView.delegate = self

extension MyViewController: DSCenterPinMapViewDelegate {

    func didStartDragging() {
        // My custom actions
    }

    func didEndDragging() {
        // My custom actions
        selectedLocation = pinMapView.mapview.centerCoordinate
    }

}