Xcode 如何在Cocos2d V3通用应用程序上根据设备选择方向
我使用的是Xcode 5.1和COCOS2D2V3.0.0.rc.3 我有一个用Cocos2d 2.0制作的通用应用程序,它在AppDelegate.m中有一个功能,允许在显示介绍场景之前根据运行的设备选择设备方向:Xcode 如何在Cocos2d V3通用应用程序上根据设备选择方向,xcode,ios7,cocos2d-iphone,Xcode,Ios7,Cocos2d Iphone,我使用的是Xcode 5.1和COCOS2D2V3.0.0.rc.3 我有一个用Cocos2d 2.0制作的通用应用程序,它在AppDelegate.m中有一个功能,允许在显示介绍场景之前根据运行的设备选择设备方向: - (BOOL) shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation { if (UI_USER_INTERFACE_IDIOM() == UIUserInterfa
- (BOOL) shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad && UIInterfaceOrientationIsLandscape(interfaceOrientation)) {
return YES;
} else if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone && UIInterfaceOrientationIsPortrait(interfaceOrientation)) {
return YES;
}
return NO;}
因此,如果它在iPhone上运行,我将方向固定为纵向模式,如果它在iPad上运行,我将方向固定为横向(左),这样我为每个设备加载不同的背景图像,然后为每个设备加载不同的场景
问题是我无法在最新版本的Cocos2d中使用相同的方法,并且我无法动态更改它,否则使用if语句将是小菜一碟,并且我也无法在Cocos2d配置文件(ccappdegate.h和.m)中使用if语句
使用Xcode提供的配置也不起作用,我想它在某个点上被Cocos2d覆盖了,我就是搞不清楚
那么,有人知道如何根据设备选择方向吗?请注意,这将是一个固定的方向,它是为最后一个Cocos2d版本
谢谢 最后,我自己管理了它,通过修改CCAppDelegate.m,它允许进行if比较,请注意,注释的代码是Cocos2d默认代码:
-(NSUInteger)supportedInterfaceOrientations
{
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
{
return UIInterfaceOrientationMaskLandscape;
}
else
{
return UIInterfaceOrientationMaskPortrait | UIInterfaceOrientationMaskPortraitUpsideDown;
}
// if ([_screenOrientation isEqual:CCScreenOrientationLandscape])
// {
// return UIInterfaceOrientationMaskLandscape;
// }
// else
// {
// return UIInterfaceOrientationMaskPortrait | UIInterfaceOrientationMaskPortraitUpsideDown;
// }
}
谢谢