didAddAnnotationViews не вызывается всегда - PullRequest
1 голос
/ 17 июля 2011

Я добавил класс обработчика делегата MKAnnotation в MKMapView следующим образом.

MapAnnotation *anAnnotation = [[[MapAnnotation alloc] initWithCoordinate:coord] autorelease];
[myMapView addAnnotation:anAnnotation];

MapAnnotation реализует MKAnnotation.

Однако didAddAnnotationViews вызывается не всегда. Иногда (редко) это делает, а иногда нет. Я проверил несколько мест, и я использовал это правильно. Это также зависит от атрибутов span?

MKCoordinateRegion регион; MKCoordinateSpan span; span.latitudeDelta = 0.005f; span.longitudeDelta = 0.005f;

CLLocationCoordinate2D location;

location.latitude = searchLocation.coordinate.latitude;
location.longitude = searchLocation.coordinate.longitude;

region.span=span;
region.center=location;

[myMapView setRegion:region animated:TRUE];
[myMapView regionThatFits:region];

Что не так с этим кодом?

1 Ответ

3 голосов
/ 02 августа 2011

Этот метод делегата вызывается для заметок, которые в данный момент видны, то есть для тех, которые находятся в пределах области карты, которая в данный момент отображается на экране.

...