我正在加载许多图像进行缓存,到目前为止它在模拟中效果很好,我已经在设备 iPad2 上尝试过它,如果在默认屏幕之后我正在加载所有精灵到缓存,它确实会崩溃。应用程序在启动之前就崩溃了。
所以,我试图在后台加载它,发生了什么,它现在不会崩溃,但是我看到一个黑色的矩形而不是我已经加载到缓存的图像,这意味着它们可能无论如何都没有加载.
这是在第一类的 init 方法中:
[self performSelectorInBackground:@selector(loadSpriteFrames) withObject:nil];
//比
-(void)loadSpriteFrames
{
//pre load effects
[[SimpleAudioEngine sharedEngine] preloadEffect:@"badEffect.mp3"];
[[SimpleAudioEngine sharedEngine] preloadEffect:@"heartEffect.mp3"];
[[SimpleAudioEngine sharedEngine] preloadEffect:@"rewardBig.mp3"];
[[SimpleAudioEngine sharedEngine] preloadBackgroundMusic:@"backgroundTraffic.mp3"];
//preload images needed for animations
[[CCTextureCache sharedTextureCache] addImage:@"stopAnim.png"];
[[CCTextureCache sharedTextureCache] addImage:@"shAnim.png"];
[[CCTextureCache sharedTextureCache] addImage:@"happyAnim.png"];
[[CCTextureCache sharedTextureCache] addImage:@"grumpyAnim.png"];
NSLog(@"*****2"); //do log
}