【原】兼容IOS6以及旧版本的旋转处理方法,心得总结

简介:

最近的项目需要频繁处理屏幕的旋转以及各控件的自适应坐标。IOS6出来之后,屏幕旋转的处理方法变得复杂很多。在查阅了很多资料以及动手测试之后,得出以下几点精简的体会:

对于IOS6.0以上版本:

1.如果想让所有的ViewController的旋转控制方式统一,则只需要在RootViewController里面重载shouldAutorotate 以及 supportedInterfaceOrientations 方法。一般的RootViewController都为UINavigationViewController或者UITabbarViewController。  问题来了:Navi以及Tab控制器都是系统自带的,如何添加上述两个方法呢?自己继承一个Navi或者Tab控制器的子类,然后让这个子类:self.window.rootViewController = myNaviCtrl;

2.如果想让其中的一些ViewController自己有自己的旋转控制方式,则应该在上述自己继承的Navi或者Tab控制器里做如下处理:

复制代码
1 - (BOOL)shouldAutorotate  
2 {  
3     return self.topViewController.shouldAutorotate;  
4 }  
5   
6 - (NSUInteger)supportedInterfaceOrientations  
7 {  
8     return self.topViewController.supportedInterfaceOrientations;  
9 }
复制代码

然后在每个ViewController里面自己重载上述两个方法,设置自己的方向值。

 

3.同理,如果在你的delegate里面,self.window.rootViewController = viewCtrl,而不是navCtrl,那么上面的那2个控制旋转的方法就应该写在UIViewController里面!

 

IOS4/ 5:

这个简单很多,没有上面的硬性条件,只需要在需要旋转的viewController里面重写 shouldAutorotateToInterfaceOrientation 方法就行
本文转自编程小翁博客园博客,原文链接:http://www.cnblogs.com/wengzilin/p/3191762.html,如需转载请自行联系原作者
 
相关文章
|
iOS开发
iOS6中横屏的处理方法
iOS6中横屏的处理方法
164 0
iOS6中横屏的处理方法
在使用蓝牙接口,遇到IOS下正常,Android下不正常的简易处理方法
如果遇到以上的情况怎么办,先确定下在调试的时候是否打开了调试面板, 如果有打开请关闭调试面板看是否还有问题,目前在安卓上打开调试面板是会有影响到蓝牙接口的使用,从之前遇到过这些问题的统计中也确实是因为这个原因
425 0
|
iOS开发
iOS post提交数据有嵌套数组的处理方法
2017年11月21日17:11:43 解决办法, 修改iOS框架里的代码: http://www.jianshu.com/p/130daa0c2fe7 确实有效, 要不然,  内层的每一个键值对都会变成一个单独的dic, 这样原来的两层就变成了3层:     ===>
1122 0
|
iOS开发
iOS接收null的处理方法
经常服务器返回的数据,有null,还有nil,如果在模型层不处理的话,到时候数据展现时,一定会崩啊,最近决心要解决这个问题,所以查看了一些资料后,有答案了: - (id) setNoNull:(id)aValue{ if (aValue == ...
813 0
|
iOS开发 C++
ios 中弹窗的编程 和 一些处理方法
<p style="color:rgb(51,51,51); font-family:Arial; font-size:14px; line-height:26px"> 1. 在ios开发中使用 弹窗来显示信息。</p> <p style="color:rgb(51,51,51); font-family:Arial; font-size:14px; line-height:26px"
1473 0
|
1月前
|
API 数据安全/隐私保护 iOS开发
利用uni-app 开发的iOS app 发布到App Store全流程
利用uni-app 开发的iOS app 发布到App Store全流程
84 3
|
3月前
|
存储 iOS开发
iOS 开发,如何进行应用的本地化(Localization)?
iOS 开发,如何进行应用的本地化(Localization)?
122 2
|
3月前
|
存储 数据建模 数据库
IOS开发数据存储:什么是 UserDefaults?有哪些替代方案?
IOS开发数据存储:什么是 UserDefaults?有哪些替代方案?
39 0