Je souhaite supprimer toutes les annotations de ma vue sans le point bleu de ma position. Quand j'appelle:Comment supprimer toutes les annotations de MKMapView sans supprimer le point bleu?
[mapView removeAnnotations:mapView.annotations];
toutes les annotations sont supprimées.
De quelle manière puis-je vérifier (comme une boucle for sur toutes les annotations) si l'annotation n'est pas l'annotation point bleu?
EDIT (je l'ai résolu à ce sujet):
for (int i =0; i < [mapView.annotations count]; i++) {
if ([[mapView.annotations objectAtIndex:i] isKindOfClass:[MyAnnotationClass class]]) {
[mapView removeAnnotation:[mapView.annotations objectAtIndex:i]];
}
}
Hey Mat, j'ai essayé d'utiliser votre code, et il fonctionne, mais pour une raison quelconque, au lieu d'enlever une broche à un moment, il se débarrasse de 3 ou 2 à la fois. ... qu'est-ce qui se passe avec ça? – skinny123
essayez d'inverser l'interation. Évidemment, enlever un signifie alors que vos indices changent. Retirer de l'arrière. – chrism
duplication possible de [Comment supprimer toutes les annotations de MKMapView à l'exception de l'annotation d'emplacement de l'utilisateur?] (Http://stackoverflow.com/questions/10865088/how-do-i-remove-all-annotations-from-mkmapview-except -le-utilisateur-emplacement-annotati) – nielsbot