底部的Swift MapKit中心与Pin的顶部

时间:2018-01-04 22:02:23

标签: swift annotations mapkit

我使用相同的函数调用来显示pin&我的地图上的注释。当我在反向地理编码调用内部的当前位置使用它时,引脚位于引脚底部(遮盖标注顶部)。当我在任何其他情况下调用相同的代码时(例如使用传递到视图控制器的坐标时),地图位于引脚顶部(这就是我想要的)。下面的代码,在此之后的图像。 placesData是自定义类PlacesData的对象,它符合:NSObject,MKAnnotation。提前谢谢!

func updateMap() {
    centerMap(mapLocation: (placeData?.coordinate)!, regionRadius: regionRadius)
    mapView.removeAnnotations(mapView.annotations)
    mapView.addAnnotation(self.placeData!)
    mapView.selectAnnotation(self.placeData!, animated: true)
}

另外:如果有意义,这里是我的函数的代码:mapView(_:viewFor :)

func mapView(_ mapView: MKMapView, viewFor annotation: MKAnnotation) -> MKAnnotationView? {
    let identifer = "Marker"
    var view: MKPinAnnotationView
    if let dequedView = mapView.dequeueReusableAnnotationView(withIdentifier: identifer) as? MKPinAnnotationView {
        dequedView.annotation = annotation
        view = dequedView
    } else {
        view = MKPinAnnotationView(annotation: annotation, reuseIdentifier: identifer)
        view.canShowCallout = true
        view.rightCalloutAccessoryView = UIButton(type: .custom)
    }
    return view
}

shows two images, one centering on pin base, the other centering on pin head

0 个答案:

没有答案