自定义Menu继承CCMenu没有添加上去

JackCheng520 发布于 2013/05/19 22:07
阅读 813
收藏 0

@王哲Walzer 你好,想跟你请教个问题:

cocosd-x中自己定义的menu继承自CCmenu怎么没有添加成功,帮忙看看!
MyMenu.h文件
#include "cocos2d.h"
using namespace cocos2d;
class mMenu : public cocos2d::CCMenu
{
public:
        mMenu(){
                
        };
        virtual~mMenu(){};
        virtual void registerWithTouchDispatcher();
        static mMenu* create(CCMenuItem* item, ...);
        static mMenu* create(CCMenuItem *item);
protected:
private:
};

#endif


MyMenu.cpp文件
#include "MyMenu.h"
#include "cocos2d.h"
using namespace cocos2d;


mMenu * mMenu::create(CCMenuItem* item,...){
        va_list args;  
        va_start(args,item);  
        mMenu *pRet = new mMenu();  
        if (pRet && pRet->createWithItems(item,args))  
        {  
                pRet->autorelease();  
                va_end(args);  
                return pRet;  
        }  
        va_end(args);  
        CC_SAFE_DELETE(pRet);  
        return NULL;



}

mMenu * mMenu::create(CCMenuItem *item){
        return create(item,NULL);
}

void mMenu::registerWithTouchDispatcher(){
        
        CCDirector::sharedDirector()->getTouchDispatcher()->addTargetedDelegate(this,1,true);
}



我是这样调用我自己的Menu的
mMenu *pMenu = mMenu::create(Load,NULL);
并且加到layer中
this->addChild(pMenu);
但是运行之后显示没有添加进去,这是为什么呢?

我这样做是为了解决在屏蔽layer下面的menu的响应。

加载中
0
H23
H23
请问最后,怎么解决的?
0
李木木
createWithItems(item,args))   没有初始化 父类的init
返回顶部
顶部