Я использую MapKit и в настоящее время пытаюсь установить на свои контакты пользовательское изображение аннотации контактов. Однако мне сложно понять, почему это не работает. Весь остальной код работает отлично, и когда я пытаюсь распечатать фрейм изображения после его установки, он показывает правильные размеры для моего «pinImage», так что кажется, что можно установить изображение в свойстве.
Кроме того, делегат настроен правильно, это подтверждается установкой пользовательского цвета на булавке по умолчанию.
Я также пробовал использовать "pinImage.png", но безуспешно. А поскольку MKPinAnnotationView является подклассом MKAnnotationView, я не вижу проблем, почему это должно быть проблемой, и, конечно же, я попытался использовать MKAnnotationView, но безуспешно.
Вот мой код:
func mapView(_ mapView: MKMapView, viewFor annotation: MKAnnotation) -> MKAnnotationView? {
if let annotation = annotation as? Pin {
let identifier = LocalConstants.pinIdentifier
var view: MKPinAnnotationView
if let dequeuedView = mapView.dequeueReusableAnnotationView(withIdentifier: identifier) as? MKPinAnnotationView {
dequeuedView.annotation = annotation
view = dequeuedView
} else {
view = MKPinAnnotationView(annotation: annotation, reuseIdentifier: identifier)
view.canShowCallout = true
view.calloutOffset = CGPoint(x: -5, y: 5)
let detailButton = UIButton(type: .detailDisclosure) as UIView
view.rightCalloutAccessoryView = detailButton
//view.pinTintColor = Util.Colors.pluppPurple
}
view.image = UIImage(named: "pinImage")
return view
}
Заранее спасибо!