2012-06-29 19 views
9

Tôi hiện đang porting một trò chơi cocos2d ObjC để Cocos2d-x, nhưng tôi đang gặp phải một số vấn đề khi cố gắng để tạo ra một phương pháp registerWithTouchDispatcher, vào lúc này tôi đang làmcocos2d-x CCTouchDispatcher - không sharedDispatcher

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

nhưng điều này đưa ra lỗi 'Không có thành viên nào được đặt tên sharedDispatcher' trong cocos2d :: CCTouchDispatcher '.

Có cách nào khác để thực hiện điều này trong cocos2d-x không?

Trả lời

19

Nếu bạn đang sử dụng 2.0, chúng đã được hợp nhất vào CCDirector. vui lòng sử dụng

  CCDirector::sharedDirector()->getTouchDispatcher() 
+0

CCDirector :: sharedDirector() -> getTouchDispatcher() -> addTargetedDelegate (this, 0, true); - thêm phần còn lại của nó –

1

sử dụng mã thay thế ccdirector. đặt mã vào hàm cclayer init.

setTouchMode(kCCTouchesOneByOne); 

registerWithTouchDispatcher(); 
0

Trong cocos2d-x bạn có thể làm như thế này.

CCDirector::sharedDirector()->getTouchDispatcher()->addStandardDelegate(this,0); 
Các vấn đề liên quan