我正在将针脚添加到MKMapView。最初是MKPointAnnotations,还添加了mapView(_ mapView:MKMapView,viewFor注释:MKAnnotation)-> MKAnnotationView?并将map.delegate设置为self。
我的问题是:为什么MKAnnotationView的某些属性(即.backgroundColor,.isSelected)响应而其他属性(.tintColor和.image)却没有响应?
很高兴收到任何建议,尽管我还有一些头发要拔!
我能想到的一切。
func mapView(_ mapView:MKMapView,viewFor注释:MKAnnotation)-> MKAnnotationView? {
guard annotation is MKPointAnnotation else { return nil }
let identifier = "Annotation"
var annotationView = mapView.dequeueReusableAnnotationView(withIdentifier: identifier)
if annotationView == nil {
annotationView = MKPinAnnotationView(annotation: annotation, reuseIdentifier: identifier)
annotationView!.canShowCallout = true
} else {
annotationView!.annotation = annotation
}
if annotation.title == "Incident" {
annotationView?.isSelected = true //This works
} else {
annotationView?.backgroundColor = .green //This works
annotationView?.image = UIImage(imageLiteralResourceName: "hospital-icon") //This doesn't
annotationView?.tintColor = .green //And this doesn't
}
return annotationView
}