iPhone: Crear MKAnnotation

votos
14

¿Puedo crear una MKAnnotation, o se trata de sólo lectura? Tengo las coordenadas, pero no me es fácil crear manualmente una MKAnnotationcon el uso setCoordinate.

Ideas?

Publicado el 21/05/2010 a las 01:09
fuente por usuario
En otros idiomas...                            


3 respuestas

votos
40

MKAnnotation es un protocolo. Por lo que necesita para escribir su propio objeto de anotación que implementa este protocolo. Por lo que su cabecera MyAnnotation se ve así:

@interface MyAnnotation : NSObject<MKAnnotation> {
    CLLocationCoordinate2D coordinate;
}

@property (nonatomic, readonly) CLLocationCoordinate2D coordinate;

// add an init method so you can set the coordinate property on startup
- (id) initWithCoordinate:(CLLocationCoordinate2D)coord;

y su puesta en práctica se parece a (MyAnnotation.m):

- (id) initWithCoordinate:(CLLocationCoordinate2D)coord
{
    coordinate = coord;
    return self;
}

Así que añadir su anotación para el mapa:

MyAnnotation * annotation = [[[MyAnnotation alloc] initWithCoordinate:coordinate] autorelease];
[self.mapView addAnnotation:annotation];

Si quieres probar un título y subtítulo de la llamada de anotación, es necesario añadir el título y las propiedades del subtítulo.

Respondida el 21/05/2010 a las 01:21
fuente por usuario

votos
32

En iPhone OS 4 hay una nueva clase MKPointAnnotation que es una implementación concreta del protocolo MKAnnotation.

Respondida el 24/06/2010 a las 12:10
fuente por usuario

votos
9

Comprobar proyecto manzana MapCallouts. Todo lo que necesita es en ese archivo: http://developer.apple.com/iphone/library/samplecode/MapCallouts/Introduction/Intro.html

Respondida el 03/06/2010 a las 02:14
fuente por usuario

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more