CCLayer 监听点击事件

根据CCLayer 的源代码,若touchEnable为true, 在onEnter(),onExit()分别会注册监听及解除监听,这样一样就不会自己写监听.
需要注意的是默认监听多点触摸,即不会调用 

virtual bool ccTouchBegan(CCTouch *pTouch, CCEvent *pEvent); 


另外CCLayer提供了一个setTouchMode(ccTouchesMode mode) 来设定监听点击的类型,
typedef enum {

      kCCTouchesAllAtOnce,

      kCCTouchesOneByOne, 

} ccTouchesMode;

所以要支持监听单点点击则设置touchMode为 kCCTouchesOneByOne
setTouchMode(kCCTouchesOneByOne);

setTouchEnabled(true);
bool GameStartTapLayer::ccTouchBegan(CCTouch *pTouch, CCEvent *pEvent){

    CCLog("touch!");

    return true

} 


你可能感兴趣的:(点击,CCLayer,touchEnable)