How to move a MKAnnotation without adding/removing it from the map?
In Swift 4.0 and IOS 11.0, I just add dynamic attribute to the coordinate property of child class of MKAnnotation class and it works: All Annotations on MapView update their location if coordinate value of MKAnnotation objects are updated: class CarAnnotation: NSObject, MKAnnotation { @objc dynamic var coordinate: CLLocationCoordinate2D //Add your custom code here }