从iPad到iPhone的Cocos2d

从iPad到iPhone的Cocos2d,iphone,ipad,cocos2d-iphone,Iphone,Ipad,Cocos2d Iphone,我目前有一个完全基于Cocos2D和花栗鼠的iPad应用程序。我想现在将我的应用程序移植到iPhone上 我所能找到的只是关于如何为iPad重新构建应用程序的提示。 有没有一个简单的解决方案,比如缩小cocos2D场景的比例 有人有关于这方面的最佳实践技巧吗 Sheesh…这不是一个真正的“答案”——但我要说的是,我必须做一次这种类型的转换——有一件事帮助我发现,通过编辑XML,可以将XIB文件从“iPhone”来回“更改”为“iPad”。我认为这是一个改变的问题: archive type=“

我目前有一个完全基于Cocos2D和花栗鼠的iPad应用程序。我想现在将我的应用程序移植到iPhone上

我所能找到的只是关于如何为iPad重新构建应用程序的提示。 有没有一个简单的解决方案,比如缩小cocos2D场景的比例


有人有关于这方面的最佳实践技巧吗

Sheesh…这不是一个真正的“答案”——但我要说的是,我必须做一次这种类型的转换——有一件事帮助我发现,通过编辑XML,可以将XIB文件从“iPhone”来回“更改”为“iPad”。我认为这是一个改变的问题:

archive type=“com.apple.InterfaceBuilder3.CocoaTouch.iPad.XIB”


好吧,CCNode确实有一个Scale属性,因此您应该能够执行类似的操作:

但是你不应该真的做这样的事情(甚至不确定它是否有效)

您应该在AppDelegate中检查您是否在iPad或iPhone上运行,并加载正确的资源(例如,以前按比例缩小的精灵)

然后,在创建场景时,不要将CCNode定位为绝对位置:

[back setPosition:ccp(160, 240)];
[back setPosition:ccp(0.5*[MyApp deviceWidth], 0.5*[MyApp deviceHeight])];
将它们放置在相对位置:

[back setPosition:ccp(160, 240)];
[back setPosition:ccp(0.5*[MyApp deviceWidth], 0.5*[MyApp deviceHeight])];
其中MyApp将有一组静态帮助程序,这些程序将返回设备功能

更妙的是,为什么不采取以下措施:

CGPoint convertedPosition = [MyApp convertForDevice:ccp(160, 240)];
[back setPosition:convertedPosition];
希望这有帮助