繼承關系
CCLayer -> CCNode,CCTouchDelegate,CCAccelerometerDelegate,CCKeypadDelegate
CCLayer在cocos2dx中抽象的是一個層,場景的一部分,CCLayer的父類很多,除了CCNode之外
還有CCTouchDelegate,CCAccelerometerDelegate,CCKeypadDelegate,這三個類都是使用者輸入處理代理
是以CCLayer在場景中,專門負責接收和處理使用者的輸入。
函數
static CCLayer *create(void);
建立一個Layer
virtual void onEnter();
層進入
virtual void onExit();
層退出
virtual void onEnterTransitionDidFinish();
場景轉換完畢之後的回調函數
virtual bool ccTouchBegan(CCTouch *pTouch, CCEvent *pEvent);
virtual void ccTouchMoved(CCTouch *pTouch, CCEvent *pEvent);
virtual void ccTouchEnded(CCTouch *pTouch, CCEvent *pEvent);
virtual void ccTouchCancelled(CCTouch *pTouch, CCEvent *pEvent);
單點觸摸處理函數
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);
多點觸摸處理函數
virtual void didAccelerate(CCAcceleration* pAccelerationValue);
重力感應回調
void registerScriptAccelerateHandler(int nHandler);
void unregisterScriptAccelerateHandler(void);
注冊和反注冊腳本
virtual void registerWithTouchDispatcher(void);
向消息派發管理器注冊自己
virtual void registerScriptTouchHandler(int nHandler, bool bIsMultiTouches = false, int nPriority = INT_MIN, bool bSwallowsTouches = false);
virtual void unregisterScriptTouchHandler(void);
注冊腳本處理函數
virtual bool isTouchEnabled();
virtual void setTouchEnabled(bool value);
virtual void setTouchMode(ccTouchesMode mode);
virtual int getTouchMode();
設定觸摸屏是否有效,以及觸摸模式,模式主要是單點和多點模式
virtual void setTouchPriority(int priority);
virtual int getTouchPriority();
設定觸摸優先級
virtual bool isAccelerometerEnabled();
virtual void setAccelerometerEnabled(bool value);
virtual void setAccelerometerInterval(double interval);
設定是否接受重力感應
virtual bool isKeypadEnabled();
virtual void setKeypadEnabled(bool value);
設定按鍵處理
void registerScriptKeypadHandler(int nHandler);
void unregisterScriptKeypadHandler(void);
注冊和反注冊按鍵處理腳本
virtual void keyBackClicked(void);
virtual void keyMenuClicked(void);
後退和菜單按鈕處理函數
inline CCTouchScriptHandlerEntry* getScriptTouchHandlerEntry() { return m_pScriptTouchHandlerEntry; };
inline CCScriptHandlerEntry* getScriptKeypadHandlerEntry() { return m_pScriptKeypadHandlerEntry; };
inline CCScriptHandlerEntry* getScriptAccelerateHandlerEntry() { return m_pScriptAccelerateHandlerEntry; };
擷取腳本入口