Проблема:
Мой MKMapViewDelegate
селектор - (void)mapView:(MKMapView *)mapView regionWillChangeAnimated:(BOOL)animated
никогда не вызывается, пока я панорамирую карту (но вызывается при масштабировании) в симуляторе iPhone 5.0. Он работает как следует (или, по крайней мере, я полагаю, должен) на симуляторе 4.3 и устройстве 4.3. В данный момент у меня нет доступа к устройству 5.0.
Положение:
У меня есть экземпляр MKMapView (созданный в Интерфейсном Разработчике) - я дважды проверил его в viewWillLoad
- (void)viewDidLoad {
assert(self.myMapView);
[self.stopMapView setDelegate:self];
}
Далее я определю некоторые селекторы MKMapViewDelegate
, но меня интересуют:
- (void)mapView:(MKMapView *)mapView regionWillChangeAnimated:(BOOL)animated
{
RKLogDebug(@"Will Change map longSpan: %lf", mapView.region.span.longitudeDelta);
}
- (void)mapView:(MKMapView *)mapView regionDidChangeAnimated:(BOOL)animated
{
RKLogDebug(@"Did Change map longSpan: %lf", mapView.region.span.longitudeDelta);
}
Что здесь происходит? Делегат как-то не проинформирован о «панорамировании» в MKMapView во время симулятора iPhone 5.0. Я уже пытался сбросить содержимое симулятора, но безрезультатно. Интересно, это просто какая-то ошибка симулятора или предполагаемое поведение iOS5? (Я на 10.7.2 и Xcode 4.2).