Είμαι οικοδόμηση μια εφαρμογή που παρακολουθεί θέση του χρήστη στο χάρτη. Μπορώ να εισαγάγετε μια καρφίτσα εύκολα, αλλά όταν η θέση έχει αλλάξει, η εφαρμογή κλείνει.
Έχω ορίσετε τις προεπιλεγμένες συντεταγμένες στο 0,0 με viewDidLoad: μέθοδος και έχω προσθέσει μια καρφίτσα σε αυτή τη θέση. Έχω κάνει αυτό γιατί θέλω να αφαιρέσει την περόνη όταν θέσης ενημερώνεται και, στη συνέχεια, τοποθετήστε και πάλι την καρφίτσα σε νέα θέση.
Εδώ είναι ο κώδικας που έχω γράψει στο - (κενό) locationManager: didUpdateToLocation: fromLocation: μέθοδος.
[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];
Εδώ, myannotation είναι η καρφίτσα που θέλω να προσθέσω, newLocation είναι η ενημέρωση τοποθεσία και CSMapAnnotation θα επιστρέψει άποψη σχολιασμό.
Το πρόβλημα είναι η εφαρμογή μου κολλάει κάθε φορά. Ήμουν σε θέση να πάρετε προειδοποιητικό μήνυμα στην κονσόλα πριν από τη συντριβή. Εδώ είναι το μήνυμα:
«Ένα παράδειγμα 0x182020 της τάξης CSMapAnnotation γίνεται deallocated ενώ τα βασικά παρατηρητές αξία ακόμα καταχωρηθεί με αυτό. Πληροφορίες Παρατηρήσεων να διαρρεύσει, και μπορεί ακόμη και να γίνει λανθασμένα συνδέεται με κάποιο άλλο αντικείμενο.»
Έτσι, plz βοηθήσει αν κάποιος έχει αντιμετωπίσει το ίδιο πρόβλημα ...













