cocos2d 2.0 CCSpriteFrameCache奇怪的行为

时间:2012-08-06 11:17:26

标签: cocos2d-iphone

我正在使用TexturePacker创建我的精灵表,然后将.plist和.pvr.ccz文件添加到Xcode项目。

使用此精灵表时,我有以下代码:

CCSpriteFrameCache *cache = [CCSpriteFrameCache sharedSpriteFrameCache];
[cache addSpriteFramesWithFile:@"filename.plist"];

它工作正常,但如果我从Xcode项目中删除filename.plist和filename.pvr.ccz,甚至从硬盘删除这些文件,项目运行良好并显示所有精灵!

如果这些文件未包含在项目包中,CCSpriteFrameCache如何加载这些文件?

1 个答案:

答案 0 :(得分:0)

在Xcode中发出“清理”命令或从设备中删除应用程序。无论哪种方式,一旦你这样做,它就会停止工作。

问题是Xcode不会在默认情况下或在某些情况下从捆绑中删除已删除的文件(我从不关心检查它是什么)。

因此,即使您从Xcode项目中删除了文件,设备上的软件包仍然包含这些文件。我想这是一个优化,其中Xcode只将添加或修改的图像传输到设备上的应用程序包。它不会删除应用程序并重新传输所有内容,因为这对开发人员来说太慢了,特别是如果您正在开发一个相当大的应用程序(20多MB)。