问题暂时标记为已解决,希望有更好的答案
在cocos2d-x 2的版本中,消息通知,使用CCNotificationCenter,
但据说在cocos2d-x 3的版本里,推荐使用自定义事件来实现
那么问题来了,
我想在自定义事件中,触发事件的同时,传入用户数据,有以下两种方案
方案一:失败!
定义
Director::getInstance()->getEventDispatcher()->addCustomEventListener("onShowMessage", CC_CALLBACK_1(WorldMapLayer::onShowMessage,this));
WorldMapLayer::onShowMessage(void* pUserData)
{
... ...(1)
}
调用
Director::getInstance()->getEventDispatcher()->dispatchCustomEvent("onShowMessage","some words.");
```
方案二:成功!
定义
Director::getInstance()->getEventDispatcher()->addCustomEventListener("onShowMessage", (EventCustom* event){
event.getUserData();
... ...(2)
}
调用
EventCustom event("onShowMessage");
event.setUserData("some words.");
Director::getInstance()->getEventDispatcher()->dispatchEvent(&event);
```
请问方案一为什么会失败,是哪里的问题?求告知,
在这里先谢过各路大神了