Нарисуйте круг радиусом 1000 м вокруг местоположения пользователя в MKMapView

(Используя iOS 5 и Xcode 4.2)

У меня есть MKMapView и я хочу нарисовать круг радиусом 1000 м вокруг местоположения пользователя.

На первый взгляд может показаться, чтоMAPview: viewForAnnotation: Метод делегата представления карты и добавление пользовательского MKAnnotationView для местоположения пользователей было бы идеальным решением. Это будет выглядеть примерно так:

- (MKAnnotationView *)mapView:(MKMapView *)mapView
            viewForAnnotation:(id <MKAnnotation>)annotation
{
    // If it's the user location, return my custom MKAnnotationView.
    if ([annotation isKindOfClass:[MKUserLocation class]]) {
        return myCustomAnnotationView;
    } else {
        return nil;
    }
}

Однако аннотации на карте не масштабируются при увеличении и уменьшении масштаба карты.

Поэтому я попытался добавить наложение (потому что накладывает масштаб на карту), используяMKCircle Класс и установка его координат в соответствии с последними координатами из моего делегата locationManger / view. Однако, каксвойство координат из MKCircle только для чтения, мне нужно удалить оверлей, а затем добавить новый каждый раз, когда пользователь перемещается. Вызывает заметное мерцание, как это происходит.

Есть ли способ плавно масштабировать аннотации при увеличении и уменьшении вида карты? Или есть хороший способ плавно переместить оверлей с изменениями местоположения пользователей?

Буду очень признателен за вашу помощь :)

Ответы на вопрос(2)

Ваш ответ на вопрос