10

現在、ObjC cocos2dゲームをcocos2d-xに移植していますが、registerWithTouchDispatcherメソッドを作成しようとすると、いくつかの問題が発生します。

void GameLayer::registerWithTouchDispatcher()
{
    CCTouchDispatcher::sharedDispatcher()->addTargetedDelegate(this,0,true);
}

しかし、これは「cocos2d::CCTouchDispatcherにsharedDispatcherという名前のメンバーがありません」というエラーを出します。

これをcocos2d-xで行わなければならない別の方法はありますか?

4

3 に答える 3

19

2.0を使用している場合、それらはCCDirectorにマージされています。使ってください

            CCDirector::sharedDirector()->getTouchDispatcher()
于 2012-06-29T23:40:29.123 に答える
1

ccdirectorの代わりにそれらのコードを使用してください。コードをcclayerinit関数に配置します。

setTouchMode(kCCTouchesOneByOne);

registerWithTouchDispatcher();
于 2013-05-26T16:57:25.717 に答える
0

cocos2d-xでは、このようにすることができます。

CCDirector::sharedDirector()->getTouchDispatcher()->addStandardDelegate(this,0);
于 2013-12-05T11:36:48.773 に答える