Ciao a tutti ho un problema con il mapkit e con lo showsUserLocation.
Ho una vista dove tramite il mapkit io creo una mappa e la posiziono secondo delle coordinate CLLOCATIONCOORDINATE2D così:
codice:
map = [[MKMapView alloc] init];
map.delegate = self;
map.showsUserLocation = NO;
self.view = map;
MKCoordinateRegion regionToscana;
MKCoordinateSpan span;
span.latitudeDelta=0.2;
span.longitudeDelta=0.2;
regionToscana.span=span;
regionToscana.center=annotationCenter;
regionToscana = MKCoordinateRegionMakeWithDistance(CLLocationCoordinate2DMake(annotation.coordinate.latitude, annotation.coordinate.longitude), 100000, 100000);
[map setRegion:regionToscana animated:TRUE];
[map regionThatFits:regionToscana];
E tutto mi funziona correttamente....
Poi ho fatto un tasto che se premuto dovrebbe mandarmi alla "mia attuale posizione" e il metodo che mi manda alla posizione è questo:
codice:
- (void)miaPosizione {
map.showsUserLocation = YES;
MKCoordinateSpan span = MKCoordinateSpanMake(0.01, 0.01);
MKCoordinateRegion region = MKCoordinateRegionMake(map.userLocation.coordinate, span);
[map setRegion:region animated:YES];
}
Il problema è questo.... se premo per visualizzare la mia posizione la
prima volta vengo mandato ad un punto in mezzo all'oceano e senza il
pallino blu che mi identifica.. se premo una seconda volta invece allora
si vengo localizzato e mandato al punto corretto dove sono e appare
anche il pallino blu che mi identifica.
Il problema sembra essere che al primo giro la app malgrado il gps sia
attivato (c'è il simbolo) nn sappia dove io sia, infatti se quando
dichiaro la mappa al posto di NO nello showsUserLocation metto YES
allora il tasto del metodo miaPosizione funziona anche alla prima
pressione, il problema è che se metto YES al posto del NO la mappa
invece che aprirsi alle coordinate che voglio io si apre dove sono
io....
Aiuto come posso risolvere?