(Supposé que vous objet d'annotation est une instance de classe MyAnnotation)
MKMapView exige que ses objets d'annotation sont conformes à MKAnnotation
protocole pour veiller à ce qu'ils mettent en œuvre certaines méthodes nécessaires - sinon votre application peut générer des erreurs dans l'exécution. Ce protocole est défini comme suit:
// MKAnnotation.h
@protocol MKAnnotation <NSObject>
// Center latitude and longitude of the annotion view.
@property (nonatomic, readonly) CLLocationCoordinate2D coordinate;
@optional
// Title and subtitle for use by selection UI.
- (NSString *)title;
- (NSString *)subtitle;
@end
C'est votre classe MyAnnotation doit définir et mettre en œuvre coordinate
propriété et peut également mettre en œuvre 2 en option title
méthodes. Pour laisser le compilateur savoir que votre classe est conforme effectivement à un protocole que vous devez déclarer votre classe de la façon suivante:
@interface MyAnnotation: NSObject <MKAnnotation> // Or whatever parent class you have
merci mon premier avertissement pas ici maintenant, mais le deuxième avertissement lorsque je tente de supprimer Pins est ici et dire : "NSArray n'implémente pas le protocole MKAnnotation" – ludo
-, .- mon erreur j'oublie juste de mettre -s à supprimerAnnotations – ludo