【发布时间】:2014-11-05 00:24:09
【问题描述】:
我正在尝试为 iOS 8 更新我的 cocos2d 游戏并遇到问题。
我使用 Xcode 6 GM 进行的游戏,使用 iOS 7.0.3 的 iPhone 5 模拟器运行良好,但使用 iOS 8 模拟器时,所有图像都向左移动 25% 和顶部 25%,我无法获得正确的坐标。 详情请参考图片
任何帮助表示赞赏 干杯 吉特
【问题讨论】:
标签: ios objective-c iphone cocos2d-iphone ios8
我正在尝试为 iOS 8 更新我的 cocos2d 游戏并遇到问题。
我使用 Xcode 6 GM 进行的游戏,使用 iOS 7.0.3 的 iPhone 5 模拟器运行良好,但使用 iOS 8 模拟器时,所有图像都向左移动 25% 和顶部 25%,我无法获得正确的坐标。 详情请参考图片
任何帮助表示赞赏 干杯 吉特
【问题讨论】:
标签: ios objective-c iphone cocos2d-iphone ios8
在目标设置中设置正确的设备方向
【讨论】:
我遇到了完全相同的问题。对我来说,我可以通过简单地为设备方向选择“纵向”来“修复”它(即使我的应用程序和你的一样是横向的)。
我意识到这不是最干净的解决方案,它可能会产生意想不到的后果,但是,由于我需要尽快更新我的应用程序(它在 iOS 8 上崩溃),我现在将使用这个解决方案。
我希望这会有所帮助!
【讨论】:
对于那些有完全相同问题的人,只需使用[[CCDirector sharedDirector] winSize] 而不是使用[[UIScreen mainScreen] bounds].size
另外不要忘记在 Xcode 6 中为 iPhone6/+ 添加新的启动图像。您可以使用您的 iPhone 5/S 启动图像。在这种情况下,您不需要为 iPhone 6/+ 分辨率制作新的图像资源
【讨论】:
我能够修复,(把它放在纵向)并且......
NSString *reqSysVer = @"6.0";
NSString *currSysVer = [[UIDevice currentDevice] systemVersion];
if ([currSysVer compare:reqSysVer options:NSNumericSearch] != NSOrderedAscending)
{
[window setRootViewController:viewController]; //iOS 6
} else {
[window addSubview: viewController.view]; //iOS 5 or less
}
CGAffineTransform transform = CGAffineTransformMakeRotation(3.14159/2);
viewController.view.transform = transform;
【讨论】:
我在我的项目中找到了另一种修复方法,检查相关问题:https://stackoverflow.com/a/26362815/2448816
【讨论】: