iOS6屏幕旋转

来源:互联网 发布:假唱软件 编辑:程序博客网 时间:2024/05/28 03:04

苹果将sdk从5.1升级到6.0之后在屏幕旋转的支持上做了一些修改。需要注意的为以下3点:

1 plist文件:首先必须在plist文件中Supported interface orientations项进行对应方向的支持。iphone和ipad分别为两项。如下图


2 新增加的关于旋转支持的函数:

需要在rootviewcontroller中响应以下2个方法:

-(BOOL)shouldAutorotate{    return YES;}-(NSUInteger)supportedInterfaceOrientations{    return UIInterfaceOrientationMaskAll;//该参数决定旋转支持的方向}
要使用(UIInterfaceOrientation)interfaceOrientation 可以用[self preferredInterfaceOrientationForPresentation]代替

3 初始页面的载入方法需要改变

在iOS4.0之前从windows窗口载入页面都用的是

[self.window addsubview:myviewcontroller]

后来支持

self.windows.rootviewcontroller = myviewcontroller;

iOS6种必须改为后者才能响应2中提到的2个方法。


以上3步便可以完成对iOS6下屏幕旋转问题的解决。

另外如果你的项目使用了Three20中 TTNavigator + TTURLMap的框架,也可以使用上面3点解决。

主要是把TTBaseNavigator 中rootviewcontroller 改成要点3中提到的方法。其他按部就班

原创粉丝点击