2016-11-27 5 views
0

Я разрабатываю универсальное приложение, и мне нравится поддерживать портрет только для iPhone и iPad. Но мне нужен iPad, чтобы поддерживать как постоянную, так и перевернутую портретную ориентацию.Как поддержать вариант 180 градусов для iPad в портретном режиме?

Поэтому я Поддерживаемое интерфейс ориентации как для iPhone и IPad в info.plist, как Portrait (top home button) и Portrait (bottom home button).

Следуя AppDeleagte.swift

var shouldSupportAllOrientation = false 

func application(_ application: UIApplication, supportedInterfaceOrientationsFor window: UIWindow?) -> UIInterfaceOrientationMask { 
    if (shouldSupportAllOrientation == true){ 
     return UIInterfaceOrientationMask.all 
    } 
    return UIInterfaceOrientationMask.portrait 
} 

Следуя ViewController.swift

override func viewWillAppear(_ animated: Bool) { 
     let appdelegate = UIApplication.shared.delegate as! AppDelegate 
     appdelegate.shouldSupportAllOrientation = false 

    let value = UIInterfaceOrientation.portraitUpsideDown.rawValue 
    UIDevice.current.setValue(value, forKey: "orientation") 
} 

Когда я поворачиваю мой IPad с ног на голову в симуляторе, он по-прежнему остается upsi вниз и не поворачивается на 180 градусов. Где я иду не так?

ответ

0

Я могу добиться этого, делая

После в AppDeleagte.swift

var shouldSupportAllOrientation = false 

func application(_ application: UIApplication, supportedInterfaceOrientationsFor window: UIWindow?) -> UIInterfaceOrientationMask { 
    if (shouldSupportAllOrientation == true){ 
     return UIInterfaceOrientationMask.all 
    } 
    return [UIInterfaceOrientationMask.portrait, UIInterfaceOrientationMask.portraitUpsideDown] 
} 

Следуя ViewController.swift

override func viewWillAppear(_ animated: Bool) { 
     let appdelegate = UIApplication.shared.delegate as! AppDelegate 
     appdelegate.shouldSupportAllOrientation = false 
} 
0

Вы не указали, как вы сконфигурировали информацию о развертывании для проекта. По умолчанию опция в «Upside Down» снят для проектов Universal, и вам нужно будет выбрать это, чтобы получить ориентацию, что нужно

Xcode Deployment Info

+0

Я проверил Upside Down, но он все еще не работает. – Coder221

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