Cocos2d iphone 使CCNode的任何给定实例对触摸产生反应
因此,在我的项目中,我将Cocos2D与CocosBuilder一起使用。我已经将我的一些角色指定为带有子ccsprite的CCNode的子类,等等 我希望这些CCNode对触摸做出反应——例如,如果我触摸其中任何一个,它们都会播放上下文相关的动画。我只想知道如何使节点对触摸产生反应(或者,让层对触摸产生反应,检测您是否触摸了精灵),动画部分就可以了 有什么想法吗?那太好了Cocos2d iphone 使CCNode的任何给定实例对触摸产生反应,cocos2d-iphone,cocosbuilder,Cocos2d Iphone,Cocosbuilder,因此,在我的项目中,我将Cocos2D与CocosBuilder一起使用。我已经将我的一些角色指定为带有子ccsprite的CCNode的子类,等等 我希望这些CCNode对触摸做出反应——例如,如果我触摸其中任何一个,它们都会播放上下文相关的动画。我只想知道如何使节点对触摸产生反应(或者,让层对触摸产生反应,检测您是否触摸了精灵),动画部分就可以了 有什么想法吗?那太好了 山姆发现这相当容易。在类的头文件中,必须将类定义为实现协议,如下所示: @interface Foo : CCNode &
山姆发现这相当容易。在类的头文件中,必须将类定义为实现协议,如下所示:
@interface Foo : CCNode <CCTouchOneByOneDelegate>
{
}
而且您必须实现CCTouchStart(如果您使用的是OneByOneDispatcher)太棒了。从来没有听说过CCTouchOneByOneDelegate协议,它非常棒。它现在被称为CCTargetedTouchDelegate。不过,这仍然是这份工作的正确选择!人力资源管理?他们从CCTargetedTouchDelegate更改为CCTouchOneByOneDelegate。如果你从Cocos2D 2.1之前的版本改为任何一篇文章,你会注意到CCTargetedTouchDelegate不起作用。哦,我以为我有最新的Cocos2D,因为我几周前下载了最新的稳定版本。谢谢你提供的信息。:)
- (void)onEnter
{
[[[CCDirector sharedDirector] touchDispatcher] addTargetedDelegate:self priority:0 swallowsTouches:YES];
[super onEnter];
}
- (void)onExit
{
[[[CCDirector sharedDirector] touchDispatcher] removeDelegate:self];
[super onExit];
}