Sto costruendo un'applicazione che tiene traccia di posizione dell'utente sulla mappa. Posso inserire un perno facilmente, ma quando la posizione viene modificata, l'applicazione si chiude.
Ho impostato le coordinate predefinite per 0,0 in viewDidLoad: metodo e ho aggiunto un perno in quella posizione. L'ho fatto perché voglio togliere il perno in cui posizione viene aggiornata e quindi inserire di nuovo il perno sulla nuova posizione.
Ecco il codice che ho scritto in - (void) locationManager: didUpdateToLocation: fromLocation: metodo.
[mapview removeAnnotation:myannotation];
CLLocationCoordinate2D currentlocation;
currentlocation.latitude=newLocation.coordinate.latitude;
currentlocation.longitude=newLocation.coordinate.longitude;
myannotation=[[[CSMapAnnotation alloc]initWithCoordinate:currentlocation annotationType:CSMapAnnotationTypeStart title:@My Location] autorelease];
[mapview addAnnotation:myannotation];
Qui, myannotation è il pin, che voglio aggiungere, newLocation è la posizione aggiornata e CSMapAnnotation tornerà vista annotazione.
Il problema è la mia app si blocca ogni volta. Sono stato in grado di ottenere messaggio di avviso sulla console prima di schiantarsi. Ecco il messaggio:
Un'istanza 0x182020 di classe CSMapAnnotation viene deallocato mentre gli osservatori valori chiave sono ancora registrati con esso. Informazioni di osservazione è trapelato, e può anche diventare erroneamente collegato a qualche altro oggetto.
Così, plz aiutare se qualcuno ha affrontato lo stesso problema ...













