Sunt de punere în aplicare kit de hartă în aplicația mea și eu sunt, folosind prima dată așa că vă rugăm să-mi spuneți cum să găsiți poziția curentă a adnotată.?
Mapkit problemă în a găsi poziția curentă de adnotare
voturi
3
Întrebat 08/03/2010 la 23:19 2010-03-08 23:19
sursa de către utilizator Anmol Bajpai
În alte limbi...
sursa de către utilizator Anmol Bajpai
În alte limbi...
1 răspunsuri
voturi 2
2
Pentru a adăuga adnotări la MapKit aveți nevoie pentru a pune în aplicare un Delegat adnotarea care implementează MKAnnotation protocolul. Când adăugați adnotarea pe hartă creați o instanță a vă Adnotare Delegat obiect si apoi se adauga la MKMapView . MKAnnotation include o poziție de proprietate pe care îl puteți interoga pentru a determina locația adnotării:
@interface AnnotationDelegate : NSObject <MKAnnotation> {
CLLocationCoordinate2D coordinate;
}
@property (nonatomic, readonly) CLLocationCoordinate2D coordinate;
@end
Pentru a adăuga adnotări direct pe hartă:
AnnotationDelegate * annotationDelegate = [[[AnnotationDelegate alloc] init] autorelease];
[mapView addAnnotation:annotationDelegate];
Atunci când primiți un calloutAccessoryControlTapped de apel invers, puteți arunca MKAnnotationView .annotation la clasa Adnotare Delegat și apoi interoga poziția proprietate:
- (void)mapView:(MKMapView *)mapView annotationView:(MKAnnotationView *)view calloutAccessoryControlTapped:(UIControl *)control
{
AnnotationDelegate * delegate = (AnnotationDelegate*)view.annotation;
// do stuff with delegate.position;
}