2010-11-20 28 views
3

MapKit semble avoir un problème étrange !!!MapKit ne supprime pas toutes les annotations

J'ai un code qui ajoute quelques annotations et j'appelle

NSArray *existingpoints = mapView.annotations; 
[mapView removeAnnotations:existingpoints]; 
       if ([mapView.annotations count] > 0) { 
        for(Plane *annotation in mapView.annotations){ 
         NSLog(@"Name: %@",annotation.reg); 
         [mapView removeAnnotation:annotation]; 
        } 
        NSLog(@"\nMapCount:%i after attempting manual remove",[mapView.annotations count]); 
       } 

Maintenant, le peu étrange est que de temps en temps, je peux entrer dans les mapView.annotations compter étant supérieure à 0. Ainsi donc je avoir une «protection» supplémentaire et essayer de retirer manuellement l'objet plutôt que de sortir NSLogged.

Cependant, le nombre final est toujours 1 après tout cela!

Le plus étrange!

+0

Je ne sais pas si cela entraînera cela, mais avez-vous showsUserLocation allumé? – Anna

+0

Non, pas dans cet exemple, je ne le fais pas. Je l'ai fait et c'était l'un de mes premiers ports d'escale! –

+0

Que se passe-t-il lorsque vous examinez l'annotation restante dans le débogueur? Regardez l'objet restant et son contenu. – Nick

Répondre

2

ont ouvert une session d'un bug avec Apple ....

Ils reconnaissent cela est un problème avec 4,2

+0

Savez-vous quand il a été corrigé (c'est-à-dire de quelle version d'iOS) ou s'il s'agit toujours d'un bogue? – matm

+0

Pour être honnête, j'ai complètement réécrit le code autour d'elle et il est maintenant corrigé –

+0

Comprendre. Merci pour vos commentaires :) – matm