1.场景触屏
当不是继承自CCLayer类时,要检测触屏事件时,可以这么做:
(1)首先开启触屏,代码如下:
this->setTouchEnabled(true)
(2)然后添加触屏事件的触发方法
ccTouchesBegan(CCSet *pTouches,CCEvent *pEvent);//触屏开始事件
ccTouchesMoved(CCSet *pTouches,CCEvent *pEvent);//拖动事件
ccTouchesEnded(CCSet *pTouches,CCEvent *pEvent);//触屏结束事件
2.层触屏(CCLayer)
需重写registerWithTouchDispatcher()函数
void GameScene::registerWithTouchDispatcher()
{
CCDirector::sharedDirector()->getTouchDispatcher()->addTargetedDelegate(this,0,true);
}
然后在onEnter添加
this->setTouchEnabled(true)
最后重写touch函数
virtual bool ccTouchBegan(CCTouch* touch, CCEvent* event);
virtual void ccTouchMoved(CCTouch* touch, CCEvent* event);
virtual void ccTouchEnded(CCTouch* touch, CCEvent* event);
睡觉了,刚开始学习挺多不懂,大家多多指教!