刪除觸摸我有一個類從實現CCTargetedTouchDeledate像這樣CCSprite擴展:從CCSprite與CCTouchDispatcher
@interface PianoKey : CCSprite <CCTargetedTouchDelegate> {
}
這具有與上述CCTouchDispatcher以下方法:
-(void) onEnter {
[super onEnter];
[[CCTouchDispatcher sharedDispatcher] addTargetedDelegate:self priority:INT_MIN+1 swallowsTouches:YES];
}
-(void) dealloc {
[[CCTouchDispatcher sharedDispatcher] removeDelegate:self];
[super dealloc];
}
而且也有標準方法CCTouchesBegan等。這個想法是通過讓每臺鋼琴在觸摸調度器中註冊來模擬多點觸摸。
這一切都很好,除了當我改變到一個新的場景。這些鋼琴鍵的觸摸仍在註冊,並將優先於新場景中的菜單項等。所以看起來精靈並沒有被從CCTouchDispatcher中刪除...
任何幫助都很受歡迎!
我會就在想,我可以創建一個類從CCLayer的繼承和包含CCSprite,匹配精靈尺寸層?這可能會更容易... – Alex