Puis - je créer un MKAnnotation, ou est - il seulement lire? Je coordonnées, mais je ne trouve pas , il est facile de créer manuellement un MKAnnotationà l' aide setCoordinate.
Idées?
Puis - je créer un MKAnnotation, ou est - il seulement lire? Je coordonnées, mais je ne trouve pas , il est facile de créer manuellement un MKAnnotationà l' aide setCoordinate.
Idées?
MKAnnotation est un protocole. Doncvous devez écrire votre propre objet d'annotation qui implémente ce protocole. Ainsivotre tête de MyAnnotation ressemble:
@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;
et votre mise en œuvre ressemble (MyAnnotation.m):
- (id) initWithCoordinate:(CLLocationCoordinate2D)coord
{
coordinate = coord;
return self;
}
Donc, pour ajouter votre annotation à la carte:
MyAnnotation * annotation = [[[MyAnnotation alloc] initWithCoordinate:coordinate] autorelease];
[self.mapView addAnnotation:annotation];
Si vous wan't un titre et sous-titre sur la légende d'annotation, vous devez ajouter le titre et les propriétés des sous-titres.
Dans iPhone OS 4 il y a une nouvelle MKPointAnnotation de classe qui est une mise en œuvre concrète du protocole MKAnnotation.
Vérifier le projet MapCallouts pomme. Tout ce que vous avez besoin est dans ce fichier: http://developer.apple.com/iphone/library/samplecode/MapCallouts/Introduction/Intro.html