cocos2dx之CCLayerMultiplex

本文详细介绍了如何使用Cocos2d-x中的CCLayerMultiplex类来创建多层菜单,并提供了完整的代码示例及回调函数说明。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

刚开始接触这个东西,弄了好久都没有弄好,我自己太笨了,现在我将如何创建一个CCLayerMultiplex过程写出来,代码如下:

    CCLayer *mainLayer = new MenuDemo;
    CCLayer *menu1 = new MenuDemoItem1;
    CCLayer *menu2 = new MenuDemoItem2;
    CCLayer *menu3 = new MenuDemoItem3;

    CCLayerMultiplex *Menu_multiplex = CCLayerMultiplex::create(mainLayer, menu1, menu2, menu3, NULL);
    addChild(Menu_multiplex, 0);

    mainLayer->release();
    menu1->release();
    menu2->release();
    menu3->release();
    
    CCDirector::sharedDirector()->replaceScene(this);

首先在你的scene中创建这个   CCLayerMultiplex,不要调换了代码顺序哦!


然后写回调函数了:

void MenuDemo::fontMenu1_callBack(CCObject *object) {
    ((CCLayerMultiplex*)(m_pParent))->switchTo(2);
}

void MenuDemo::fontMenu2_callBack(CCObject *object) {
    ((CCLayerMultiplex*)(m_pParent))->switchTo(3);
}

void MenuDemo::fontMenu3_callBack(CCObject *object) {
    ((CCLayerMultiplex*)(m_pParent))->switchTo(1);
}

这个MenuDemo就是当前的scene,特别要注意回调函数里面的m_pParent参数, /** A weak reference to the parent */它是之指的当前的所激活的node!


这样基本上就创建完成了!

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值