当我未在MKMapView
上设置委托但添加注释时,其图像如下:
但是,如果我这样返回MKAnnotationView
:
func mapView(_ mapView: MKMapView, viewFor annotation: MKAnnotation) -> MKAnnotationView? {
if annotation.isKind(of: MKUserLocation.self) {
return nil
}
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!.collisionMode = .circle
annotationView!.canShowCallout = true
} else {
annotationView!.annotation = annotation
}
return annotationView
}
然后出现的图标看起来像是垂直的图钉:
我知道我可以在MKAnnotationView
上使用自定义图像。但是,我想要默认的,除了我希望它看起来像第一个而不是第二个,但我也想自定义标注。我该如何实现?
答案 0 :(得分:1)
第一个图像属于MKMarkerAnnotationView。因此,要求它,而不是MKPinAnnotationView。