Исправление задержек в обновлении ориентации - PullRequest
1 голос
/ 15 декабря 2009

У нас есть приложение для iPhone, которое вращается между портретом и ландшафтом. Все в основном работает должным образом, но кажется, что изменения в ориентации воспринимаются недостаточно быстро (а иногда и вовсе). Есть ли способ сообщить обработке поворота по умолчанию, что нам нужны обновления быстрее? Я бы не стал писать пользовательский код акселерометра, но с помощью акселерометра, который я знаю, я могу указать, как быстро мне нужно получать обновления.

1 Ответ

1 голос
/ 15 декабря 2009

Не знаю, как вы получаете уведомление об изменении ориентации, но я использую - (void) directionChanged: (NSNotification *) уведомление. Это обновляется, по крайней мере, в симуляторе быстрее, чем дважды в секунду, что для меня достаточно быстро.

Ах да, у меня были проблемы с этим. В примере приложения яблок или их доко (я не могу вспомнить) он использует:

  • (void) ОриентацияChanged: (NSNotification *) уведомление { [self executeSelector: @selector (updateLandscapeView) withObject: nil afterDelay: 0]; }

Чем вы создаете метод, который делает

  • (void) updateLandscapeView { if (UIDeviceOrientationIsLandscape (deviceOrientation) &&! isShowingLandscapeView) { [self presentModalViewController: scheduleMonth animated: YES]; isShowingLandscapeView = YES; } else if (deviceOrientation == UIDeviceOrientationPortrait && isShowingLandscapeView) { [self dismissModalViewControllerAnimated: YES]; isShowingLandscapeView = NO; } }

Я поместил свою альбомную ориентацию в отдельный класс, который вызывается в updateLandscapeView

Если у вас сложный ландшафтный вид, вы можете, возможно, загрузить его из потока, а если он вернется к портретному режиму, остановить поток и закрыть вид. Пользователь может не получить альбомную ориентацию, если он делает это быстро, но это означает, что он не получит глюков или застрянет в альбомной или портретной ориентации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...