iOS上的风景画像

时间:2015-04-06 19:03:17

标签: ios objective-c iphone

我正在构建一个ios应用程序,目前只支持纵向模式。我只想转换为横向模式。但是当我试图改变我的观点时,它只会坚持纵向模式。我也改变了我的nib文件中的方向。但它没有用。你能告诉我哪个约束阻止它以纵向模式查看。任何人都建议我强行转换为横向模式。

2 个答案:

答案 0 :(得分:0)

应用程序的Info.plist文件包含应用程序将响应的方向的应用程序默认设置。您可以双击它在Xcode中编辑它,然后在那里轻松设置键,或者您可以直接编辑plist源来执行此操作。

来自Information Property List Key Reference

  

...例如,为iPhone指定纵向启动方向   和iPod touch设备以及横向右侧的发射方向   iPad,您应该在Info.plist中指定相应的键   文件:

<key>UIInterfaceOrientation</key>
<string>UIInterfaceOrientationPortrait</string>
<key>UIInterfaceOrientation~ipad</key>
<string>UIInterfaceOrientationLandscapeRight</string>

还可以覆盖每个ViewController方法,以确定该特定视图是否将定向到设备方向。

来自UIViewController文档:

处理视图轮播

  

在iOS 8中,所有与旋转相关的方法都是   弃用。相反,旋转被视为大小的变化   视图控制器的视图,因此使用   viewWillTransitionToSize:withTransitionCoordinator:方法。当。。。的时候   界面方向改变,UIKit在窗口上调用此方法   根视图控制器。那个视图控制器然后通知它的孩子   查看控制器,在整个视图中传播消息   控制器层次结构。

     

在iOS 6和iOS 7中,您的应用支持界面方向   在您的应用的Info.plist文件中定义。视图控制器可以覆盖   限制列表的supportedInterfaceOrientations方法   支持的方向。通常,系统仅调用此方法   在窗口的根视图控制器或视图控制器上   呈现以填满整个屏幕;子视图控制器使用   窗口的一部分由父视图为它们提供   控制器,不再直接参与决定什么   支持旋转。应用程序方向的交集   掩码和视图控制器的方向掩码用于确定   视图控制器可以旋转到哪个方向。

     

您可以覆盖preferredInterfaceOrientationForPresentation   一个视图控制器,旨在全屏显示   具体方向。

答案 1 :(得分:0)

我只是忘了在我的AppDelegate实现中添加一行代码。我只是放了那行代码,现在它完全没问题。

代码是self.window.rootviewController = self.ViewController