2017-01-12 14 views
1

У меня есть приложение с 4-мя диспетчерами. Один должен быть представлен только в ландшафтном режиме. Остальные 3 могут быть как ландшафтными, так и портретными.Objective-c с использованием UIInterfaceOrientationMask для управления ориентацией

В разделе «Информация о развертывании», «Ориентация устройства», «У меня вверху вниз», «Пейзаж слева» и «Пейзаж справа». В Info.plist У меня есть 3 поддерживаемых интерфейса Ориентации: Пейзаж влево, Пейзаж вправо и Портретная верхняя кнопка.

На мой взгляд, контроллер, где я хочу ТОЛЬКО пейзаж У меня есть: - (BOOL) shouldAutorotate { return YES; }

-(UIInterfaceOrientationMask) supportedInterfaceOrientations { 
    return UIInterfaceOrientationMaskLandscapeLeft+UIInterfaceOrientationMaskLandscapeRight; 
} 

В остальных 3 контроллеры просмотреть у меня есть: - (BOOL) shouldAutorotate { возврата ДА; }

-(UIInterfaceOrientationMask) supportedInterfaceOrientations { 
    return UIInterfaceOrientationMaskAll; 
} 

Со всеми эти параметров: 1) мнения, что должно быть только в альбомной ориентации только в альбомном, так что это хорошо. 2) Другие 3 вида могут отображаться в режиме пейзажа влево, в альбомном и портретном режимах с помощью кнопки вверху. 3) Когда я пытаюсь повернуть экран в другом портретном положении, он не вращается.

Итак, я изменяю страницу развертывания или страницу Info.plist, чтобы включить этот 4-й выбор, который не установлен. В результате 3 других вида вращаются в порядке, но режим пейзажного режима теперь поворачивается в портрет.

Что мне нужно сделать, чтобы получить мой первый вид пейзажа, а другой 3 - повернуть?

ответ

0

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

https://stackoverflow.com/a/24928474/6438500

+0

Благодарим за ответ. – Mark

+0

Вырезание и вставка кода, как показано в контроллере представления, генерирует 2 ошибки в отношении использования необъявленной переменной appDelegate. – Mark

+0

Здесь appDelegate является экземпляром AppDelegate. Вам нужно создать экземпляр AppDelegate. – Sunny

 Смежные вопросы

  • Нет связанных вопросов^_^