在cocos2d-x中,有两种触摸方式:单点触摸和多点触摸
首先我们需要设置可触:
setTouchenable(true);
其次重写注册触摸事件:
//注册 void HelloWorld::registerWithTouchDispatcher() { //注册单点 //CCDirector::sharedDirector()->getTouchDispatcher()->addTargetedDelegate(this, 0, true); //注册多点 CCDirector::sharedDirector()->getTouchDispatcher()->addStandardDelegate(this, 0); }
最后就是写触摸函数了 ————白白原创
void ccTouchesBegan(cocos2d::CCSet *pTouches, cocos2d::CCEvent *pEvent)
void ccTouchesMoved(cocos2d::CCSet *pTouches, cocos2d::CCEvent *pEvent)
最后一点很重要,在ios模拟单点触摸的时候,一定要在ios目录下的AppController.mm文件里,
增加一行代码: [__glView setMultipleTouchEnabled:YES];
ios默认关闭多点触摸,如果不增加这行代码,那么在模拟器上永远只能获取到一个触摸点,程序将变成单点触摸。