J'ai trois broches sur une carte. Je voudrais donner à chacun une couleur différente. Dans la méthode délégué viewForAnnotation, je fais ceci:Comment différencier les broches d'annotation?
- (MKAnnotationView *) mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>) annotation{
MKPinAnnotationView *annView=[[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:@"anAddress"];
annView.pinColor = MKPinAnnotationColorGreen;
annView.animatesDrop=TRUE;
annView.canShowCallout = YES;
annView.calloutOffset = CGPointMake(-5, 5);
return annView;
}
Je pensais à créer un tableau de MKPinAnnotationViews mais comment puis-je obtenir la bonne puisque la méthode déléguée n'est pas indexé à quoi que ce soit?
Vous voulez dire en faisant un MKPinAnnotationView personnalisé? Mais encore, comment puis-je appeler le bon quand le délégué déclenche? Ou est-ce important? Si ce n'est pas le cas, je peux juste garder un compteur au niveau de la classe pour les sortir d'un tableau à chaque coup de feu du délégué. – 4thSpace
Je veux dire que votre classe id contient un champ pour l'indicateur de couleur, ou un compteur que vous utilisez pour déterminer la couleur. –
notnoop
Parfait! Merci. – 4thSpace