MapKit - How to change user location icon to default

528 Views Asked by At

I'm trying to change my pins color, but when I'm adding the code to switch annotation it also changes my location icon (from blue dot to a pin). Any tips how to restore default user location icon?

func mapView(_ mapView: MKMapView, viewFor annotation: MKAnnotation) -> MKAnnotationView? {
    let annotationView = MKMarkerAnnotationView(annotation: annotation, reuseIdentifier: "MyMarker")
    switch annotation.title!! {
        case "Ślęża":
            annotationView.markerTintColor = UIColor(red: (69.0/255), green: (95.0/255), blue: (170.0/255), alpha: 1.0)
        case "Śnieżnik":
            annotationView.markerTintColor = UIColor(red: (52.0/255), green: (114.0/255), blue: (1.0/255), alpha: 1.0)
        case "test":
            annotationView.markerTintColor = UIColor(red: (246.0/255), green: (233.0/255), blue: (212.0/255), alpha: 1.0)
        case "Brooklyn Bridge":
            annotationView.markerTintColor = UIColor(red: (146.0/255), green: (187.0/255), blue: (217.0/255), alpha: 1.0)
        default:
            annotationView.markerTintColor = UIColor.blue
    }
    return annotationView
}
1

There are 1 best solutions below

0
On BEST ANSWER

Add a check to exclude it

guard !(annotation is MKUserLocation) else { return nil }
let annotationView = MKMarkerAnnotationView(annotation: annotation, reuseIdentifier: "MyMarker")