¿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?
¿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?
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.
En iPhone OS 4 hay una nueva clase MKPointAnnotation que es una implementación concreta del protocolo MKAnnotation.
Comprobar proyecto manzana MapCallouts. Todo lo que necesita es en ese archivo: http://developer.apple.com/iphone/library/samplecode/MapCallouts/Introduction/Intro.html