cocos2dx menu思考 (1)

cocos2dx menu思考 (1),第1张

概述1、 CCMenuItemSprite首先是一个节点(继承Node),内部包含了三个子节点(m_pNormalImage,m_pSelectedImage,m_pDisabledImage), 这三个子节点分别对应着CCMenuItem普通状态,选中状态和禁止状态。 2、 初始化方法: CCMenuItemSprite * CCMenuItemSprite::create(CCNode* norm

1、

CcmenuItemSprite首先是一个节点(继承Node),内部包含了三个子节点(m_pnormalimage,m_pSelectedImage,m_pDisabledImage),
这三个子节点分别对应着CcmenuItem普通状态,选中状态和禁止状态。

2、
初始化方法:
CcmenuItemSprite * CcmenuItemSprite::create(CCNode* normalSprite,CCNode* selectedSprite,CCNode* DisabledSprite)

3、

menuItem的大小:

voID CcmenuItemSprite::setnormalimage(CCNode* pImage){    if (pImage != m_pnormalimage)    {        if (pImage)        {            addChild(pImage,knormalTag);            pImage->setAnchorPoint(ccp(0,0));        }        if (m_pnormalimage)        {            removeChild(m_pnormalimage,true);        }        m_pnormalimage = pImage;        this->setContentSize(m_pnormalimage->getContentSize());        this->updateImagesVisibility();    }}

4、

点击按钮的状态切换就是通过隐藏和显示不同的状态来实现的:

voID CcmenuItemSprite::selected(){    CcmenuItem::selected();    if (m_pnormalimage)    {        if (m_pDisabledImage)        {            m_pDisabledImage->setVisible(false);        }        if (m_pSelectedImage)        {            m_pnormalimage->setVisible(false);            m_pSelectedImage->setVisible(true);        }        else        {            m_pnormalimage->setVisible(true);        }    }}

总结:

1、如果想要在menuItem上面加入一个东西,如文字,表明是什么功能的按钮, 如果需要在三种状态下都显示,那么只需要把它加入到menuItem节点上即可。 2、如果三个状态显示的内容不同,如果只是图片变化,则使用 CcmenuItemImage * CcmenuItemImage::create(const char *normalimage,const char *selectedImage,const char *DisabledImage) , 如果不止是图片变化,则使用CcmenuItemSprite::create(CCNode* normalSprite,CCNode* DisabledSprite)。

总结

以上是内存溢出为你收集整理的cocos2dx menu思考 (1)全部内容,希望文章能够帮你解决cocos2dx menu思考 (1)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1050035.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存