Necesito una implementación simple de MKCircle overlay

Tengo un pequeño map en mi vista en el que quiero colocar una superposition de MKCircle. Tengo todas las coorderadas y el radio mientras estoy creando regiones para el monitoreo. Me gustaría mostrar esta región al usuario para que sepan cuáles son los límites.

Por mi vida, no hay un buen tutorial en Internet que me dé simplemente las necesidades básicas de soltar un círculo en mi map y que se haga.

Como precursor … He usado los ejemplos de Apple sin suerte. Se supone que el ejemplo de Regions es la única necesidad, pero lo único que puedo hacer es soltar el pin, sin círculo. Incluso copié sus classs directamente en mi proyecto … sin alegría. Por lo tanto, si puede señalarme un buen ejemplo o layout exactamente lo que necesita ser implementado en un simple ViewController, estaría muy agradecido.

Mi idea de por qué el uso del código de muestra no funcionó: no conectó su controller de vista como el delegado de la vista del map. El primer paso para hacerlo es asegurarse de que el controller implementa el protocolo MKMapViewDelegate, como este (en su file de encabezado):

#import <MapKit/MapKit.h> @interface MyViewController : UIViewController <MKMapViewDelegate> 

Si está configurando el controller de vista desde un XIB, Ctrl-arrastre desde la vista del map a la instancia del controller y conéctelo como la salida del delegate la vista del map. Si lo configura en código, entonces llame a theMapView.delegate = self; en su -loadView o -viewDidLoad .

Entonces, en algún momento (en tu -viewDidLoad , por ejemplo),

 [theMapView addOverlay:[MKCircle circleWithCenterCoordinate:someCoordinate radius:someRadius]]; 

… dará como resultado la vista del map llamando a su delegado's -mapView:viewForOverlay: method, que puede implementar algo como esto:

 -(MKOverlayView *)mapView:(MKMapView *)mapView viewForOverlay:(id <MKOverlay>)overlay { MKCircleView *circleView = [[MKCircleView alloc] initWithCircle:(MKCircle *)overlay]; circleView.fillColor = [UIColor blueColor]; return [circleView autorelease]; } 

Sus

 -(MKOverlayView *)mapView:(MKMapView *)mapView viewForOverlay:(id < MKOverlay>)overlay 

para el método de delegado completo, vea una respuesta completa para las personas completamente perdidas como yo.