在iOS5.1 和 之前的版本中,
我们通常利用
-
-
(BOOL)shouldAutorotateToInterf aceOrientation:(UIInterfaceOrientation)interfaceOrientation - {//interfaceOrientation表示当前设备旋转到的方向,返回YES则表示界面也旋转到这个方向,NO则不
-
return (interfaceOrientation == UIInterfaceOrientationPo rtrait); - }
在IOS6中的每个ViewController中代替使用:
- -(BOOL)shouldAutorotate
- {
-
return NO;//YES 支持旋转到supportedInterfaceOrient ations函数所指定的方向 NO 则完全不支持旋转 始终保持正屏(UIInterfaceOrientationMa skPortrait) - }
- -(NSUInteger)supportedInterfaceOrient
ations - {
-
return UIInterfaceOrientationMa skPortrait; //当shouldAutorotate函数返回YES 指定的值才起作用 - }
这里有一个问题,当是用UINavigationController管理ViewController时,在各个viewController中制定的这两个函数必须要一样,不然会崩,于是一般自定义UINavigationController,然后在这里面重写这两个方法,这样之后,在每个具体ViewController中的指定就不会起作用,这样便于统一各个界面的旋转风格,但不适合有界面旋转风格不同的情况
for ios 4 and 5,
如果没有重写shouldAutorotateToInterf
http://blog.csdn.net/totogogo/article/details/8002173
http://palmsky.net/?p=3232