Как добавить окружность в качестве радиуса вокруг аннотации

#iphone #objective-c #xcode #sdk

#iPhone #objective-c #xcode #sdk

Вопрос:

У меня есть MKMapView. Мне нужно добавить круг в качестве радиуса вокруг аннотации (скажем, в 1 км от позиции).

Я бы предположил, что это какая-то форма MKAnnotation, но я не могу найти в документации ничего, что объясняет это. Кто-нибудь знает, как это делается?

Ответ №1:

Вам нужно создать MKCircle наложение и установить его центральную координату такой же, как у аннотации.

Например:

 //after adding the annotation at "coordinate", add the circle...
MKCircle *circle = [MKCircle circleWithCenterCoordinate:coordinate radius:1000];
[mapView addOverlay:circle];

//implement the viewForOverlay delegate method...    
-(MKOverlayView *)mapView:(MKMapView *)mapView viewForOverlay:(id)overlay 
{
    MKCircleView *circleView = [[[MKCircleView alloc] initWithOverlay:overlay] autorelease];
    circleView.strokeColor = [UIColor redColor];
    circleView.lineWidth = 2;
    return circleView;
}
  

Комментарии:

1. Что представляет радиус? Метры?

2. Да, он представляет метры / metres.

3. Вам также необходимо использовать протокол MKMapViewDelegate