A la hora de implementar un mapa en una aplicación, muchas veces requerimos seleccionar el sitio exacto del lugar (o lugares) al que queremos hacer referencia. Con este sencillo código podremos marcar el sitio exacto de un determinado lugar sobre un MKMapView.

El código en cuestón es este:

CLLocationCoordinate2D loc = CLLocationCoordinate2DMake(34.923964,-120.219558);
MKCoordinateRegion reg = MKCoordinateRegionMakeWithDistance(loc, 1000, 1000); self->mapa.region = reg;
MKPointAnnotation* ann = [[MKPointAnnotation alloc] init];
ann.coordinate = loc;
ann.title = @"Park here";
ann.subtitle = @"Fun awaits down the road!";
[self->mapa addAnnotation:ann]
[ann release]; self->mapa.hidden = NO;

Este código va dentro del ViewDidLoad y tienes que cambiar la variable mapa por el pointer de tu MKMapView. Si quieres poner varias chichetas, tienes que poner el mismo código a continuación en el ViewDidLoad y cambiar las variables loc, reg y ann por loc1, reg1 y ann1, por ejemplo.

Si lo que quieres es que te lleve directamente al mapa al pulsar un botón, a parte de ponerlo en el ViewDidLoad, también tienes que ponerlo en un IBAction.
Para establecer el lugar, tienes que cambiar las coordenadas del código por las del lugar que quieres asignar. Para ello accede a esta web y arrastra el muñeco naranja sobre el lugar que desees poner la chincheta. A continuación, copia los dos número pequeñitos que te aparecerán justo debajo de los cuadros amarillos y pégalos en el código, respetando la coma y si llevan signo (-).

Por último, para cambiar el texto y la descripción de la etiqueta, cambia el texto entrecomillado de las líneas 5 y 6 respectivamente.

Anuncios