删除触摸我有一个类从实现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