首页 > 代码库 > cocos2dx遇到的一些坑

cocos2dx遇到的一些坑

针对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里添加的,移到外面。