Mapkit problemă în a găsi poziția curentă de adnotare

voturi
3

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ă.?

Întrebat 08/03/2010 la 23:19
sursa de către utilizator
În alte limbi...                            


1 răspunsuri

voturi
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;
}
Publicat 09/03/2010 la 02:26
sursa de către utilizator

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more