我正在为iphone和ipad构建一个iphone应用程序。我有纹理打包器。包含我的图像的plist。我有一个普通版本,一个高清版本,一台ipad版本,和一台ipad高清版本。
例如,如果我当前正在构建菜单,我是否通过执行以下操作来设置所有菜单?
[[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:@"x_buttons.plist"];
[[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:@"x_buttons-hd.plist"];
[[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:@"s_buttons-ipad.plist"];
[[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:@"s_buttons-ipadhd.plist"];
当我创建一个按钮时,xcode如何"知道"根据设备使用哪个plist?(iphone5、iphone4、retina、ipad等)
感谢您对制作通用应用程序的帮助
John
您只需要编写[[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:@"x_buttons.plist"];
。
在AppDelegate.m
的didFinishLaunchingWithOptions
方法中,
更改以下行。
CCFileUtils *sharedFileUtils = [CCFileUtils sharedFileUtils];
[sharedFileUtils setEnableFallbackSuffixes:NO]; // Default: NO. No fallback suffixes are going to be used
[sharedFileUtils setiPhoneRetinaDisplaySuffix:@"-hd"]; // Default on iPhone RetinaDisplay is "-hd"
[sharedFileUtils setiPadSuffix:@"-ipad"]; // Default on iPad is "ipad"
[sharedFileUtils setiPadRetinaDisplaySuffix:@"-ipadhd"]; // Default on iPad RetinaDisplay is "-ipadhd"`
这将帮助Xcode通过iPad、iPad Retina或iPhone Retina建筑的后缀找到您的资源文件。
查看本教程,
http://www.raywenderlich.com/32049/texture-packer-tutorial-how-to-create-and-optimize-sprite-sheets-in-cocos2d.