Skip to content

Instantly share code, notes, and snippets.

@sag333ar
Created September 4, 2014 14:09
Show Gist options
  • Save sag333ar/55f3344fd2bf3a4695c6 to your computer and use it in GitHub Desktop.
Save sag333ar/55f3344fd2bf3a4695c6 to your computer and use it in GitHub Desktop.
Register Touch events in Cocos2d-x
// in .h file
class HelloWorld : public cocos2d::LayerColor
{
public:
bool myTouchBegan(cocos2d::Touch *pTouch, cocos2d::Event *pEvent);
void myTouchMoved(cocos2d::Touch *pTouch, cocos2d::Event *pEvent);
void myTouchEnded(cocos2d::Touch *pTouch, cocos2d::Event *pEvent);
}
// in .m file
void HelloWorld::registerTouchFunction()
{
#pragma mark - Touch event register
auto listner = EventListenerTouchOneByOne::create();
listner->setSwallowTouches(true);
listner->onTouchBegan = CC_CALLBACK_2(HelloWorld::myTouchBegan, this);
listner->onTouchMoved = CC_CALLBACK_2(HelloWorld::myTouchMoved, this);
listner->onTouchEnded = CC_CALLBACK_2(HelloWorld::myTouchEnded, this);
_eventDispatcher->addEventListenerWithSceneGraphPriority(listner, this);
}
#pragma Mark - Touches
bool HelloWorld::myTouchBegan(cocos2d::Touch *pTouch, cocos2d::Event *pEvent) {
CCLOG("on touch began x=%f, y=%f",pTouch->getLocation().x,pTouch->getLocation().y);
return true;
}
void HelloWorld::myTouchMoved(cocos2d::Touch *pTouch, cocos2d::Event *pEvent) {
}
void HelloWorld::myTouchEnded(cocos2d::Touch *pTouch, cocos2d::Event *pEvent) {
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment