Какой EventDispatcher использовать в cocos2d? Node::EventDispatcher или Director::EventDispatcher?

Какой EventDispatcher использовать в cocos2d? Node::EventDispatcher или Director::EventDispatcher? После ссылки на официальную документацию как класса Director, так и класса Node Ссылка на класс директора Cocos2d-x Ссылка на класс узла Cocos2d-x я немного смущен, в чем разница между использованием

Director::getInstance()->getEventDispatcher() // consider this is used inside a class which is derived from Node class

или

this->getEventDispatcher() // consider this refers to a class derived from Node class

1 ответ

Решение

Оба одинаковы. this->getEventDispatcher() вызывает функцию CCNode getEventDispatcher (). Он возвращает _eventDispatcher.

_eventDispatcher = _director->getEventDispatcher(); // Check CCNode.cpp

Итак, эти 3 такие же

Director::getInstance()->getEventDispatcher()->addEventListenerWith..

this->getEventDispatcher()->addEventListenerWith..

_eventDispatcher->addEventListenerWith..

ПРИМЕЧАНИЕ: я только что проверил Cocos2d-x 4.0

Другие вопросы по тегам