针对2.x
1、CCSprite无法直接用文件名更换图片,可以添加如下函数
bool CCSprite::setWithFile(const char *pszFilename)
{
CCAssert(pszFilename != NULL, "Invalid filename for sprite");
CCTexture2D *pTexture = CCTextureCache::sharedTextureCache()->addImage(pszFilename);
if (pTexture)
{
setTexture(pTexture);
CCRect rect = CCRectZero;
rect.size = pTexture->getContentSize();
setTextureRect(rect);
return true;
}
else
returnfalse;
}
2、添加全局点击菜单音效,再menu里修改
if (m_pSelectedItem)
{
m_eState = kCCMenuStateTrackingTouch;
m_pSelectedItem->selected();
const char *effectName = m_pSelectedItem->getEffectName();
if (strcmp(effectName, "") != 0)
{
CocosDenshion::SimpleAudioEngine::sharedEngine()->playEffect(effectName);
}
return true;
}
3、在ccb界面里添加从代码中创建的cclayer触摸无效
这个是在nodeloaded里添加的,移到外面。
原文地址:http://www.cnblogs.com/xdao/p/cocos2dx_keng02.html