У меня есть наложение на карту, и я хотел бы изменить его координаты. Для этого я буду вызывать метод setNeedsDisplayInMapRect: после внесения изменений в представление.
Я проверил это, просто изменив fillColor, и он отлично работает:
overlayView.fillColor = [[UIColor greenColor] colorWithAlphaComponent:0.3];
[overlayView setNeedsDisplayInMapRect:mapView.visibleMapRect];
Однако, по-видимому, я ударился о кирпичную стену, пытаясь также изменить координаты центра моего вида наложения (это MKCircleView с MKCircle ). Есть метод в
MKAnnotation , которому соответствует MKCircle, называется setCoordinate: - что похоже на то, что мне нужно. К сожалению, свойство circle
в MKCircleView доступно только для чтения. Кроме того, свойство overlay
в MKOverlayView также доступно только для чтения.
Есть ли способ изменить координаты наложения, не прибегая к удалению вида наложения и добавлению нового (что может вызвать очень заметное мерцание на экране)?