屏幕自动旋转方式:
1. 在info.plist中添加UIInterfaceOrientation属性:UIInterfaceOrientationLandscapeRight/Left等.如图,同时可以去掉状态栏.去掉状态栏之后的屏幕才是iPhone/iPad的分辨率显示大小。iPad 768*1024(同事状态栏大概去掉30像素大小)。
<key>UIInterfaceOrientation</key>
<string>UIInterfaceOrientationLandscapeRight</string>
<key>UIStatusBarHidden</key>
<true/>
2. 我们可以在启动代码中添加UIApplication单例设置状态栏方向:
[[UIApplication sharedApplication]setStatusBarOrientation:UIInterfaceOrientationScapeRight];
3. 模拟器 硬件 向左/右旋转.在模拟选项可以旋转手动旋转模拟器
4. cocos2d中:
[[CCDirectorsharedDirector] setDeviceOrientation:CCDeviceOrientationLandscapeRight];
方法1旋转之后 初始坐标还是_竖屏时都初始坐标,而方法4能够修改cocos2d的初始坐标.始终保持是当前看到屏幕的左下角(cocos2d源自OpenGL_ES,初始坐标是从左下角开始的,iOS自带的quartz绘图初始坐标左上角)。
这里初始坐标变动的好处是我们不需要因为界面旋转了 而重新改变绘图坐标系(都是横屏情况下,当然横竖屏切换还是需要重新设计界面)。而前面的方法只改动了设备/模拟器的方向。在后面的文章中会有根据重力感应自动界面旋转,和这里结合,一个iOS应用的重力感应旋转界面就可以出来了。