实现MKMarkerAnnotationView

时间:2018-10-23 19:52:13

标签: xcode annotations android-mapview

到目前为止,我已经能够获取所有注释以成为标记,但是我需要为每个注释/标记具有单独的标记。

以前我可以使用

    //    func mapView(_ mapView: MKMapView, viewFor annotation: MKAnnotation) -> MKAnnotationView? {
//
//        var annotationView = mapView.dequeueReusableAnnotationView(withIdentifier: "AnnotationView")
//        if annotationView == nil {
//
//            annotationView = MKAnnotationView(annotation: annotation, reuseIdentifier: "AnnotationView")
//        }
//
//        if annotation.title == "Speed Trap" {
//            annotationView?.image = UIImage(named: "SpeedTrapImage.png")
//        }else if annotation.title == "Traffic Accident" {
//            annotationView?.image = UIImage(named: "AccidentImage.png")
//        }else if annotation === mapView.userLocation {
//            annotationView?.image = UIImage(named: "UserImage.png")
//        }
//        annotationView?.canShowCallout = true
//        return annotationView!
//    }

这是当前我的标记的代码

    func mapView(_ mapView: MKMapView, viewFor annotation: MKAnnotation) -> MKAnnotationView? {
    var annotationView = MKMarkerAnnotationView()

    var identifier = ""
    var color = UIColor.red


    if let dequedView = mapView.dequeueReusableAnnotationView(
        withIdentifier: identifier)
        as? MKMarkerAnnotationView {
        annotationView = dequedView
    } else{
        annotationView = MKMarkerAnnotationView(annotation: annotation, reuseIdentifier: identifier)
    }
    annotationView.markerTintColor = color
    annotationView.glyphImage = UIImage(named: "pizza")
    annotationView.glyphTintColor = .yellow
    annotationView.clusteringIdentifier = identifier
    return annotationView
}

在实现此目标方面的任何帮助将不胜感激

0 个答案:

没有答案