Ik ben het bouwen van een app die locatie van de gebruiker tracks op de kaart. Ik kan een pin gemakkelijk opnemen, maar wanneer de locatie wordt gewijzigd, de app afgesloten.
Ik heb de standaard coördinaten ingesteld op 0,0 in viewDidLoad: Werkwijze en ik heb een pen aldaar toegevoegd. Ik heb dit gedaan omdat ik wil de pin te verwijderen wanneer de locatie wordt bijgewerkt en vervolgens de pen weer op nieuwe locatie.
Hier is de code die ik heb geschreven - (void) locationManager: didUpdateToLocation: fromLocation: methode.
[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];
Hier, myannotation is de pen die ik wil toevoegen, newLocation is de bijgewerkte locatie en CSMapAnnotation zal annotatie uitzicht terugkeren.
Het probleem is mijn app crasht everytime. Ik was in staat om waarschuwingsbericht op de console voor de crash. Hier is de boodschap:
Een instantie 0x182020 van de klasse CSMapAnnotation wordt deallocated terwijl belangrijke waarde waarnemers nog steeds mee worden geregistreerd. Observation informatie wordt gelekt, en kan zelfs worden ten onrechte gekoppeld aan een ander object.
Dus, plz help als iedereen het zelfde probleem onder ogen heeft gezien ...













