我正在创建一个类似的CCMenuItemToggle:
CCMenuItemToggle *musicToggle = [CCMenuItemToggle itemWithTarget:self
selector:@selector(MusicMute:) items:enableMusic, disableMusic, nil];
enableMusic和disableMusic是从图像创建的CCMenuItems:
CCMenuItem *enableMusic = [CCMenuItemImage itemFromNormalImage:@"musicbutton.png"
selectedImage:@"musicbutton.png" target:nil selector:nil];
现在,我第一次点击切换按钮时,会有明显的延迟(我认为它正在加载下一个切换图像)。预加载此图像的最佳方法是什么,以免发生这种情况?一旦加载一次就会很快发生变化......
答案 0 :(得分:1)
你可以尝试
[[CCTextureCache sharedTextureCache] addImage:@"musicbutton.png"];
这会将图像预加载到textureCache
答案 1 :(得分:0)
事实证明瓶颈根本不是CCMenuItem ......它是动作本身发生的事情(SimpleAudioEngine第一次被初始化,需要一段时间)。问题解决了!