|
|
51CTO旗下网站
|
|
移动端

iOS6.0旋转兼容的那点事

在iOS 6.0之前我们都是使用shouldAutorotateToInterfaceOrientation方法来控制视图、状态栏的旋转,但是iOS 6.0及以后就要使用supportedInterfaceOrientations方法来控制旋转了。

作者:董桉远来源:oschina|2013-04-09 10:03

【大咖·来了 第7期】10月24日晚8点观看《智能导购对话机器人实践》

这两天问答系统里,问ios横竖屏切换、还有状态栏旋转的问题有点多,来些小心得,希望遇到的人少走弯路;
先贴官方说明:
iOS 6.0 Release Notes:
Autorotation is changing in iOS 6. In iOS 6, the shouldAutorotateToInterfaceOrientation: method 
of UIViewController is deprecated.In its place, you should use the supportedInterfaceOrientationsForWindow: 
and shouldAutorotate methods.

在iOS 6.0之前我们都是使用shouldAutorotateToInterfaceOrientation方法来控制视图、状态栏的旋转,但是iOS 6.0及以后
就要使用supportedInterfaceOrientations方法来控制旋转了;
所以向iOS 6.0兼容的需要手动添加supportedInterfaceOrientations 方法,来控制视图和
状态栏的旋转,还有两点需要说明:
1、在iOS 6.0之前,控制旋转的代码,无需和plist的中的Supported interface orientations一一对应,举个例子:
plist的Supported interface orientations选项中支持,Portrait(bottom home button)、Landscape(right home button),无Landscape(left home button)
方法shouldAutorotateToInterfaceOrientation中强制支持UIInterfaceOrientationLandscapeLeft编译执行没有任何问题,
但是在iOS 6.0中,如果在supportedInterfaceOrientations中添加UIInterfaceOrientationMaskLandscapeLeft编译正常,
运行过程中,左旋转程序就会异常退出;所以程序支持旋转的,代码与plist一定要保持一致;
2、在Xcode 4.5之前旋转支持的是
UIInterfaceOrientationLandscapeLeft  
 UIInterfaceOrientationLandscapeRight
UIInterfaceOrientationPortrait              
 UIInterfaceOrientationPortraitUpsideDown

而Xcode 4.5 GM Seed及Xcode 4.5.1旋转支持的是(多了个All,还有Mask的修饰,Xcode 4.5之前是不识别的)
UIInterfaceOrientationMaskAll      
UIInterfaceOrientationMaskLandscapeLeft
UIInterfaceOrientationMaskLandscapeRight        
UIInterfaceOrientationMaskPortrait
UIInterfaceOrientationMaskPortraitUpsideDown

【编辑推荐】

  1. iOS开发中一些实用小代码
  2. iOS开发隐藏键盘方法总结
  3. iOS学习之UINavigationController详解与使用(一)
  4. iOS开发:系统声音服务
  5. iOS Xcode制作静态库详解
【责任编辑:闫佳明 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

订阅专栏+更多

活学活用 Ubuntu Server

活学活用 Ubuntu Server

实战直通车
共35章 | UbuntuServer

226人订阅学习

Java EE速成指南

Java EE速成指南

掌握Java核心
共30章 | 51CTO王波

87人订阅学习

Mysql DBA修炼之路

Mysql DBA修炼之路

MySQL入门到高阶
共24章 | 51CTO叶老师

483人订阅学习

读 书 +更多

SOA概念、技术与设计

在本书中,Thomas ERL呈现了第一部端对端的教程,提供了从基层开始的面向服务的建模与设计的逐步指导。通过逐步的、清晰生动的、良好的SOA...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊

51CTO服务号

51CTO播客