首页 > 代码库 > cocos2dx如何设置ios和Android横屏竖屏的几种方法

cocos2dx如何设置ios和Android横屏竖屏的几种方法

cocos2d-x编译到ios上,默认是横屏的,若要改为http://竖屏,不同的ios版本,方法也会不同

在ios7上也许我们设置好了横竖屏,但到了ios6上也许会变化。下面白白给大家分享一下我的做法

转载请注明地址http://blog.csdn.net/u010229677

1、通用的

只需要在RootViewController.mm文件里面

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
    return UIInterfaceOrientationIsPortrait( interfaceOrientation );
}

// For ios6, use supportedInterfaceOrientations & shouldAutorotate instead
- (NSUInteger) supportedInterfaceOrientations{
#ifdef __IPHONE_6_0
    return UIInterfaceOrientationMaskPortrait;
#endif
}
- (BOOL) shouldAutorotate {
    return NO;
}


————也可以这么做—————

if ([[UIDevice currentDevice] respondsToSelector:@selector(setOrientation:)]) {
[[UIDevice currentDevice] performSelector:@selector(setOrientation:) 
  withObject:(id)UIInterfaceOrientationPortrait];
}
}
//但是
- (BOOL) shouldAutorotate {
    return NO;
}//一定要返回no


另外,需要在项目的General属性Deployment InfoPortrait前面选中

2、可以设置view与电池条方向保持一致

在AooController.mm中

<span style="font-size:18px;">- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions </span>

这个函数中加一句话

[[UIApplication sharedApplication] setStatusBarOrientation:UIDeviceOrientationPortrait animated: NO];


android项目修改为横屏的方法是修改xml文件:

AndroidManifest.xml中设置

android:screenOrientation="portrait"