【cocos2d-x-3.0beta2】タッチイベントの呼び出し
2系の参考書を見ながらcocos2dxの勉強をしているのですけど、
2系と3系で変わった所が有るととたんにつまづきますね。
今回もそれと同じで2系ではこんな書き方でタッチイベント呼び出せていたのですが
Main.h
//タッチ操作 virtual bool ccTouchBegan(cocos2d::CCTouch* touch, cocos2d::CCEvent pEvent); virtual void ccTouchEnded(cocos2d::CCTouch* touch, cocos2d::CCEvent pEvent);
Main.cpp
//タッチ開始イベント bool Main::ccTouchBegan(Touch *pTouch, Event *pEvent) { return true; } void Mian:: ccTouchEnded(Touch *pTouch, Event *pEvent) { CCLOG("ccTouchEnded"); }
これを3系で実行するとエラーになりました Declaration of 'ccTouchBegan' overrides a 'final' function
むむん、、、、 これを解消する為に以下の様に変更します。
Main.h
//タッチイベント bool onTouchBegan(cocos2d::Touch* pTouch, cocos2d::Event* pEvent); void onTouchEnded(cocos2d::Touch* pTouch, cocos2d::Event* pEvent);
Main.cpp
//タッチ開始イベント bool Main::onTouchBegan(Touch *pTouch, Event *pEvent) { return true; } //タッチ終了イベント void Main::onTouchEnded(Touch *pTouch, Event *pEvent) { CCLOG("ccTouchEnded"); }
これで通る様になりました