Я нашел лучший способ будет подкласса MKUserLocation:
class SimulatedUserLocation: MKUserLocation {
private var simulatedCoordinate = CLLocationCoordinate2D(latitude: 39, longitude: -76)
override dynamic var coordinate: CLLocationCoordinate2D {
get {
return simulatedCoordinate
}
set {
simulatedCoordinate = newValue
}
}
}
Затем добавьте его в качестве аннотации mapView.addAnnotation(SimulatedUserLocation()). (Вы также можете захотеть , чтобы скрыть реальное местоположение первого mapView.showsUserLocation = false)
IOS сделает аннотацию так же, как действительное местоположение пользователя.
dynamic используется на имущество, так что путем замены координат вызывает КВО и перемещает его на карте.