2015-05-13 3 views
2

Я хочу, чтобы общая ориентация моего приложения была портретирована, но для одного конкретного UIViewController (VC2B) Я хочу, чтобы пользователь мог наклонить устройство к альбомной ориентации. (VC2B имеет навигационную панель)Разрешить множественные ориентации только для одного UIViewController

Я пробовал разные типы кода, но не повезло. В идеале я хотел бы включить поворот только UIViewController (VC2B). Но это кажется невозможным, вместо этого кажется, что вам нужно включить все ориентации в разделе «Общие», а затем отключить их программно - это действительно так?

Во всяком случае я пытался различные вещи

override func shouldAutorotate() -> Bool { 
    return true 
} 

override func supportedInterfaceOrientations() -> Int { 
    return Int(UIInterfaceOrientation.LandscapeLeft.rawValue) | Int(UIInterfaceOrientation.LandscapeRight.rawValue) | Int(UIInterfaceOrientation.Portrait.rawValue) 
} 

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

Allow all orientations for only one view controller

Вопрос: Как я могу в кругленькую образом, без добавления кода в все мои UIViewController с, позволяют несколько ориентаций лишь один UIViewController?

+0

Как вы показываете этот конкретный диспетчер представлений? как Модальный? или нажатие в NavigationController? – iphonic

+0

NC ------> VC1B --- push ---> VC2B – KML

+0

Возможный дубликат [Как заблокировать ориентацию устройства в iOS 7 и iOS 8] (http://stackoverflow.com/questions/29962727/how -to-lock-device-orientation-in-ios-7-and-ios-8) –

ответ

0

Выполните следующие действия, как я сделал это, когда я столкнулся с такой же ситуацией:

позволяют желательные ориентации в экране Общая информация в каждом ViewController.swift, переопределение функция авторотации либо верно или false (true для того, который должен вращаться, false для остальных)

+0

Это работает только в том случае, если все VC загружены нажатием, сбой при загрузке модальный. Затем представление будет загружаться в любой ориентации, имеющейся в телефоне. – KML

+0

да, вы правы – iAnurag

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