Mapkit Annotation自定义图像不会更改

时间:2017-04-10 19:17:23

标签: ios swift3 mapkit

你好我正在努力在我的应用程序上设置地图样式,我想要更改地图上的图钉。我已经阅读了有关如何实现此更改的教程,但出于某种原因,它无法在我的应用程序中运行。任何人都可以帮我弄清楚它为什么不改变?

我的地图代表已经与自己相关联。

func mapView(_ mapView: MKMapView, viewFor annotation: MKAnnotation) -> MKAnnotationView? {
    let identifier = "hai"
    if annotation is shots {
        var annotationView = mapView.dequeueReusableAnnotationView(withIdentifier: identifier)

        if annotationView == nil {
            annotationView = MKPinAnnotationView(annotation: annotation, reuseIdentifier: identifier)
            annotationView!.canShowCallout = true
            let btn = UIButton(type: .detailDisclosure)
            annotationView!.rightCalloutAccessoryView = btn
            annotationView!.image = UIImage(named: "ip.png")!
        } else {

            annotationView!.annotation = annotation
        }

        return annotationView
    }
    return nil
}

提前致谢。

1 个答案:

答案 0 :(得分:0)

尝试使用MKAnnotationView(annotation: annotation, reuseIdentifier: identifier)代替MKPinAnnotationView(annotation: annotation, reuseIdentifier: identifier)。这就是方法返回的内容。