cocos2d-iphone - 即使当我触摸 ccMenuItem 时也会调用 ccTouchesBegan

标签 cocos2d-iphone

我有一个带有 CCMenuItemsCCMenu,我将其添加到 CCLayer 上。当我单击 CCMenuItems 时,我的 CCTouchesBegan 未启动。

当我触摸菜单项时如何调用此方法?

最佳答案

CCMenu 注册为目标触摸委托(delegate)并吞下菜单项上的触摸。您可以尝试创建 CCMenu 的子类并重写它的 registerWithTouchDispatcher 方法,如下所示

-(void) registerWithTouchDispatcher
{
    [[CCTouchDispatcher sharedDispatcher] addTargetedDelegate:self priority:kCCMenuTouchPriority swallowsTouches:NO];
}

这应该可以按您的意愿工作,但可能会导致菜单行为出现其他问题。

关于cocos2d-iphone - 即使当我触摸 ccMenuItem 时也会调用 ccTouchesBegan,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12580802/

相关文章:

iphone - 减少应用程序大小cocos2d iOS

iphone - 如何动态更改正在访问的属性

iphone - 如何在cocos2d中创建按钮?

objective-c - Objective C for 循环延迟

iphone - iphone 配对游戏

android - 在 cocos 2D_android 中从一个场景移动到另一个场景

ios - Cocos2d - 以正弦波运动将 Sprite 从 A 点移动到 B 点

cocos2d-iphone - 在 cocos2d 中的贝塞尔曲线上旋转 Sprite

iphone - 更新 Cocos2d iPhone 中 HUD 上的标签?

ios - Cocos3d : Set CC3Scene backdrop to transparent