2016-11-26 2 views
0

Я пытаюсь создать приложение, которое поддерживает только портретную ориентацию, я попытался установить в Target -> Общие -> Информация о развертывании -> ПортретSwift 3 - Как заблокировать ориентацию для приложения iOS?

Затем на appDelegate.swift

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

AT ViewController.swift

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

Но он не работает .. В ViewController.swift, он дает мне ошибку :

метод не переопределяет любой метод из суперкласса

+0

Выберите цель и найти ориентацию устройства в соответствии Deplayment информации. –

+0

Устранены ли вы все другие ориентации в информации о развертывании, кроме портрета? –

+0

Да, да, я даже очистил ландшафт от info.plist -> поддерживаемые ориентации интерфейса –

ответ

1

Its простого кода просто скопируйте и вставьте следующий код в ViewController, который вы хотите исправить ориентацию для.

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

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

Это работает, если и только если весь код находится в ViewController, не нужно ничего менять или положить что-нибудь в AppDelegate. Приветствия

0

В Swift 3.1

Если вы хотите, чтобы заблокировать ориентацию на весь экран.

См. Также https://freakycoder.com/ios-notes-5-how-to-application-orientation-abba750bed6e.

Откройте приложение AppDelegate.swift и добавьте этот код.

// Lock the orientation to Portrait mode 
func application(_ application: UIApplication, supportedInterfaceOrientationsFor window: UIWindow?) -> UIInterfaceOrientationMask { 
    return UIInterfaceOrientationMask(rawValue: UIInterfaceOrientationMask.portrait.rawValue) 
} 

или

// Lock the orientation to Landscape(Horizontal) mode 
func application(_ application: UIApplication, supportedInterfaceOrientationsFor window: UIWindow?) -> UIInterfaceOrientationMask { 
    return UIInterfaceOrientationMask(rawValue: UIInterfaceOrientationMask.landscape.rawValue) 
} 
Смежные вопросы