-(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation { return (toInterfaceOrientation == UIInterfaceOrientationLandscapeRight); }
Для iOS 6.x все оказалось немного сложнее:
1. В классе вью контроллера модального окна определяем обработчики методов
- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation { return UIInterfaceOrientationLandscapeRight; } - (NSUInteger)supportedInterfaceOrientations { return UIInterfaceOrientationMaskLandscape; } - (BOOL)shouldAutorotate { return YES; }
2. Сразу после вызова показа модального окна устанавливаем положение статус бара:
[[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationLandscapeRight animated:NO];
3. Перед тем, как убрать модальное окно, возвращаем статус бар в нужное положение:
[[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationPortrait animated:NO];
Как обычно пример на github-е.
Еще интереснее когда этот модальный у тебя с навигейшн контроллером. Приходится извращаться еще сильнее, потому что с какой-то стати навигейшн не пробрасывает вызовы этих методов...
ОтветитьУдалитьPilot34
ОтветитьУдалитьКак будто нет проблем, в модельное окно добавил еще вью контролер который пушится в навигейшин модального окна, в примере (или я не так понял).
Добрый день!
ОтветитьУдалитьВопрос такой ,как изменить ориентацию приложение при нажатие на UIButton?
То есть нажимаю кнопку , и ориентация поворачивается как в программе YouTube!!!
Важно именно в ios 6.0