在 iPad 中未调用supportedInterfaceOrientations
Posted
技术标签:
【中文标题】在 iPad 中未调用supportedInterfaceOrientations【英文标题】:supportedInterfaceOrientations not called in iPad 【发布时间】:2016-02-08 16:26:31 【问题描述】:我有一个 UITabBarController 子类,它有以下代码:
class TabBarController: UITabBarController
// MARK: Methods
override func viewDidLoad()
super.viewDidLoad()
override func supportedInterfaceOrientations() -> UIInterfaceOrientationMask
print(self.selectedIndex)
if self.selectedIndex == 1
return .Portrait
return .All
supportedInterfaceOrientations
函数仅在我从 iphone 执行应用程序时调用。如果我从我的 iPad mini 执行应用程序,它不会被调用。知道这种行为的原因吗?
【问题讨论】:
【参考方案1】:这很奇怪,但是如果我从 iPad 的设备方向中取消选择 Upside Down
,则会调用 supportedInterfaceOrientations
。
更新:
如果启用“常规”中的“需要全屏”设置,将允许方向委托方法 shouldAutorotate
、preferredInterfaceOrientation
和 supportedInterfaceOrientations
触发。
【讨论】:
将 UIRequiresFullScreen 设置为 YES 意味着该应用不再支持多任务处理。根据您的用例,这可能不是一个好主意。见developer.apple.com/library/content/documentation/WindowsViews/… 这是一个残酷的解决方案,但这是我找到的唯一可行的解决方案。谢谢! 我必须取消选择“支持多个窗口”才能使其工作。以上是关于在 iPad 中未调用supportedInterfaceOrientations的主要内容,如果未能解决你的问题,请参考以下文章
Boost.Thread 线程在发布版本中未在 iPhone/iPad 上启动
iPad 问题中未显示 UIImagePickerController