有两种方式
1.重写 多点触摸
virtual void onTouchesBegan (const std::vector< cocos2d::Touch * > &touches, cocos2d::Event *unused_event);
2. 注册 单点触摸
auto dispatcher = Director::getInstance()->getEventDispatcher();
auto listener = EventListenerTouchOneByOne::create();
listener->onTouchBegan = CC_CALLBACK_2(HelloWorld::onTouchBegan,this);
listener->onTouchMoved = CC_CALLBACK_2(HelloWorld::onTouchMoved,this);
listener->onTouchEnded = CC_CALLBACK_2(HelloWorld::onTouchEnded,this);
listener->setSwallowTouches(true);//不向下传递触摸
dispatcher->addEventListenerWithSceneGraphPriority(listener,this);
然后 重写
bool HelloWorld::onTouchBegan(Touch* touch, Event *event)
void HelloWorld::onTouchEnded(cocos2d::Touch *touch, cocos2d::Event *unused_event)
本文介绍了在Cocos2d-x中处理触摸事件的两种方法:重写多点触摸事件和注册单点触摸监听器。通过具体的代码示例展示了如何实现触摸开始、移动及结束的回调函数。

1472

被折叠的 条评论
为什么被折叠?



