Пейзажный режим ТОЛЬКО для iPhone или iPad

Я хочу создать приложение, которое не использует портретный режим.

Я не уверен, нужно ли мне редактировать plist или иметь код в дополнение к plist

Код найден здесь

Запуск в ландшафтном режиме

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

  • В файле Info.plist вашего приложения добавьте UIInterfaceOrientation
    и установите его значение для
    ландшафтный режим. Для пейзажа
    ориентации, вы можете установить значение
    этого ключа
    UIInterfaceOrientationLandscapeLeft
    или
    UIInterfaceOrientationLandscapeRight.

  • Разместите свои представления в ландшафтном режиме и убедитесь, что их параметры автоматической настройки установлены правильно.

  • Переопределите метод управления должен быть shouldAutorotateToInterfaceOrientation: метод и возврат ДА только для
    желаемая ориентация ландшафта и NO
    для портретных ориентаций.

Чтобы сделать свой ландшафтный режим приложения, вы должны использовать «Поддерживаемые интерфейсные ориентации». ( Targets -> YourApp -> Supported Interface Orientations -> Landscape Left & Right )

Поддерживаемые интерфейсные ориентации

Вы также должны установить ориентацию приложения в файле Info.plist вашего приложения ( Файл Info.plist ), добавив ключ Supported interface orientations со значениями Landscape (left home button) и Landscape (right home button) . Роу

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


shouldAutorotateToInterfaceOrientation устарела от iOS 6 и выходит.

Возrotation UIDeviceOrientationLandscapeLeft/Right для shouldAutorotateToInterfaceOrientation должно сделать ваше приложение «ландшафтом»:

 - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation { return (interfaceOrientation == UIInterfaceOrientationLandscapeLeft || interfaceOrientation == UIInterfaceOrientationLandscapeRight); } 

Также можно изменить настройки Info.plist и View Orientation вашего приложения (как описано выше).


Кроме того, я рекомендую изменить ориентацию вашего представления на Landscape в Инспекторе атрибутов . пейзаж

Вы также можете просто сократить все это до

 - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation { // Return YES for supported orientations return UIInterfaceOrientationIsLandscape(interfaceOrientation); } 

отредактируйте plist, чтобы поддерживать только ландшафт, а затем убедитесь, что в каждом uiviewcontroller / uitabbar и т. д. в shouldAutoRotateToInterfaceOrientation return return ((interfaceOrientation == UIInterfaceOrientationLandscapeLeft) || (interfaceOrientation == UIInterfaceOrientationLandscapeRight)); ,

  • Обнаружение интернет-соединения iPhone SDK
  • UIScrollView: подкачка по горизонтали, прокрутка по вертикали?
  • UIImage imageNamed требует pathForResource?
  • UITableView, прокрутите вниз до перезагрузки?
  • установить фоновое изображение для всего приложения iPhone / iPad
  • Как я могу изменить NSArray в Objective-C?
  • как увеличить размер шрифта в UIWebView
  • Центральное содержимое UIScrollView при меньшем
  • Могу ли я получить доступ к брелкам на iPhone?
  • Перетаскивание UIView внутри UIScrollView
  • Какова максимальная длина объекта NSString?
  • Давайте будем гением компьютера.