0
我在cocos2d中提到了一件奇怪的事情。無法清理場景之間的緩存?
在我的init遊戲場景和菜單場景中,我將一個frameCache plist和一個spriteSheet加載到緩存中。
我發現,如果我在比賽現場dealloc方法我清理緩存,:
[[CCSpriteFrameCache sharedSpriteFrameCache] removeSpriteFrames];
[[CCTextureCache sharedTextureCache] removeAllTextures];
這樣的話,當我更換場景菜單,並返回到遊戲中,他不重,因此加載緩存得到他無法找到所需幀的錯誤。
因此,似乎我可以在每個場景中只將幀加載到緩存一次,如果我刪除它並返回到現場,它不會再次加載並出錯。反之亦然,如果我清理我的菜單場景中的緩存,轉到遊戲並返回到菜單,那麼菜單場景也不會加載緩存,並且無法找到我需要的幀。
這很有趣。這是有原因的嗎?或者我在這裏錯了嗎?
非常感謝。
非常感謝!這是一個非常好的答案! – Curnelious 2011-12-24 10:03:11