Почему regionWillChangeAnimated: никогда не вызывается во время панорамирования? - PullRequest
0 голосов
/ 18 ноября 2011

Проблема:

Мой 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).

1 Ответ

1 голос
/ 09 января 2012

Я добавил два метода в свой проект.Протестированный симулятор iPhone 5.0: масштабирование / панорамирование -> вызовы методов

Я нахожусь на 10.7.2 и Xcode 4.2 тоже.

Так что я могу подтвердить, что это не намеренное поведение, как вы думалибыть.

Надеюсь, это поможет.

...