1首先要实现纯虚类
class Plant :public PlantInterface,public CCTouchDelegate
2把当前的精灵放入一个代理
CCDirector::sharedDirector()->getTouchDispatcher()->addTargetedDelegate(this, 0, true);
第一个参数要绑定的对象,
第2个参数是优先级,数字越小优先级越高
最后一个参数true表示他独吞当前的层false表示别的精灵也能用
3实现纯虚类的方法
CCStandardTouchDelegate 默认事件 | |
---|---|
virtual void ccTouchesBegan(CCSet *pTouches, CCEvent *pEvent); | 处理按下事件 |
virtual void ccTouchesMoved(CCSet *pTouches, CCEvent *pEvent); | 处理按下并移动事件 |
virtual void ccTouchesEnded(CCSet *pTouches, CCEvent *pEvent); | 处理松开事件 |
virtual void ccTouchesCancelled(CCSet *pTouches, CCEvent *pEvent); | 处理打断事件 |
CCTargetedTouchDelegate | |
---|---|
virtual bool ccTouchBegan(CCTouch *pTouch, CCEvent *pEvent); | 处理用户按下事件,true表示继续处理, 否则false. |
virtual void ccTouchMoved(CCTouch *pTouch, CCEvent *pEvent); | 处理按下并移动事件 |
virtual void ccTouchEnded(CCTouch *pTouch, CCEvent *pEvent); | 处理松开事件 |
virtual void ccTouchCancelled(CCTouch *pTouch, CCEvent *pEvent); | 处理打断事件 |