2015-11-08 69 views
12

我创建了一个全新的单视图iOS通用Swift应用程序。然后,我在应用设置中取消选中“左侧风景”和“右侧风景”。我在iPhone上运行它,并且无论我如何旋转手机,它都保持纵向模式。然后我在iPad上运行它,并旋转到任何东西。即使是颠倒的肖像模式,这是第一次没有启用?我唯一经历过这个吗?这发生在iPad模拟器以及当我用命令+箭头键旋转时。如何在iPad应用上禁用横向模式?

我也尝试添加下面的ViewController.swift,并得到了相同的结果。

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

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

难道没有办法在iPad上实际禁用旋转远离肖像吗?

+8

制作通用应用程序时,iPad和iPhone的方向设置是分开的。再次检查您是否也禁用了iPad。 –

回答

35

它的工作完美。不需要为它编写代码。

首先选择项目,然后进入第一个标签“常规”。

现在选择在部署信息节“设备”选项的iPad并且在向下选择设备方向。在从横向左删除复选标记,正确的选择

完成后选择它回装置,通用并将设备方向设置为纵向模式,并从横向模式中删除复选标记。

现在在iPad上运行你的应用程序并检查这些事情。我希望它会得到解决。

+1

解决了我的问题 –

2

这张图片就够了,只能选择肖像。

set portrait mode


编辑对希亚姆的评论

Xcode8.3.3 MacOS的塞拉利昂v10.12.5

enter image description here

+0

设备模式为通用,取消选中除“纵向”之外的“设备方向”。并在iPad设备上运行应用程序,对我的观察有点奇怪,方向仍在发生。 – KkMIW

+0

@KkMIW什么是您的appdelegate设置。你的定位是什么?请参阅我的这篇文章http://stackoverflow.com/q/43773075/6521116 –

+0

没有代码写在Appdelegate的方向。我在Project-Target-General选项卡中只启用了肖像模式。 – KkMIW

3

有在Info.plist中单独的条目为iPhone和iPad支持的方向。

  • iPhone = UISupportedInterfaceOrientations
  • 的iPad = UISupportedInterfaceOrientations〜ipad的

您需要修改的Info.plist和删除景观条目UISupportedInterfaceOrientations〜iPad的关键。

相关问题