Вам не нужно удалять аннотацию, а затем повторно добавлять ее, чтобы обновить местоположение аннотации на карте.
MapView, к которому вы добавили аннотацию, должен позаботиться об изменениях местоположения за вас. Не видя больше кода, я думаю, что проблема у вас может заключаться в том, что ваша аннотация использует переменную location
вместо переменной coordinate
.
Протокол MKAnnotation требует, чтобы вы реализовали переменную экземпляра CLLocationCoordinate2D coordinate
в своем классе аннотаций. Также рекомендуется синтезировать свойство координат.
Попробуйте добавить переменную экземпляра CLLocationCoordinate2D coordinate
и соответствующее ей свойство @property (assign, nonatomic) CLLocationCoordinate2D coordinate
в файл класса аннотаций .h. Затем используйте @synthesize
в файле класса аннотаций .m.
Если это не решит вашу проблему, возможно, вам придется добавить больше деталей к вашему вопросу.