J'utilise MKPolylineview pour montrer un itinéraire sur une carte.Cacher un MKPolylineView provoque le flou plutôt que le masquage
J'ai deux boutons, un pour afficher l'itinéraire, un pour cacher l'itinéraire.
Sur un iPhone avec ios 4.0.2 l'itinéraire se cache et affiche parfaitement bien lorsque je clique sur les boutons.
Sur un iPhone avec ios 4.1 installé, l'itinéraire s'affiche correctement. Lorsque je clique sur le bouton pour masquer l'itinéraire, la ligne se développe en taille x2 (grossièrement) et devient floue.
Si je joue avec le niveau de zoom, il finira par disparaître. Parfois, lorsque je fais un zoom arrière, il réapparaît momentanément lorsque je franchis un certain niveau de zoom. (Je sais qu'il n'y a techniquement pas de niveaux de zoom dans MapKit mais j'espère que vous obtenez ma signification).
L'effet de flou de ligne se produit également dans le simulateur avec 4.1. Il n'apparaît pas sur une version précédente de mon application dans Store qui a été créée avec la version SDK précédente.
L'extrait de code qui cache l'itinéraire lorsque le bouton est cliqué est ci-dessous.
-(IBAction) segmentedControlIndexChanged{
switch (self.control.selectedSegmentIndex) {
case 0:{
NSArray *allValues = [routeLineViews allValues];
for(MKOverlayView *lineView in allValues){
lineView.hidden = YES;
}
[map setNeedsLayout];
break;
}
}