Intereting Posts
iPhone Собственные системные процедуры (тип датаграммы-сокета) Ошибка Undefined Symbols при интеграции Locality IOS SDK через Cocoapods iOS: дополнительное пространство внизу UITableView Отключить наблюдение за ключевыми значениями в Objective C Как добавить кнопку «Готово» к клавиатуре iOS Невозможно импортировать Firebase sdk в приложение Swift Как связать представление таблицы с несколькими разделами, которые представляют разные типы данных, используя RxSwift и RxSwiftDataSources? Realm – отображение объектов и сохранение типа AnyObject NSInternalInconsistencyException после обновления до iOS 6 iOS Сортировать CFArrayRef групп ABRecordRef Изменено Название цели в Xcode теперь выполняется на черном экране черная полоса над таблицей после segue Как определить направление движения, положение касания и т. Д.? Single ADBannerViewDelegate для нескольких видов Можно ли динамически подключать логику к методу?

Как остановить изменение ориентации устройства

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

введите описание изображения здесь

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

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

Swift 3:

 class YourBaseNavigationController: UINavigationController { override func viewDidLoad() { super.viewDidLoad() UIDevice.current.setValue(UIInterfaceOrientation.portrait.rawValue, forKey: "orientation") } override var shouldAutorotate: Bool { return false } override var supportedInterfaceOrientations: UIInterfaceOrientationMask { return .portrait } override var preferredInterfaceOrientationForPresentation: UIInterfaceOrientation { return .portrait }} 

Используйте YourBaseNavigationController в качестве навигационного контроллера. В любом случае контроллер просмотра в этом навигационном контроллере будет поддерживать только портретный режим.

отменить отметки Пейзаж влево и вправо

Вам нужно отключить ориентацию с помощью кода.

Добавьте этот код в свой RootViewController:

 - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation { // Return YES for supported orientations return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown);//set 'return NO'; for stop orientation } 

Быстро :

 override func supportedInterfaceOrientations() -> UIInterfaceOrientationMask { return UIInterfaceOrientationMask.Portrait }