CCMenuItemImage没有响应触摸!

时间:2011-03-04 03:04:55

标签: iphone cocos2d-iphone

所以我正在向我的图层添加CCMenuItemImage,如下所示:

CCMenuItemImage *pauseButton = [CCMenuItemImage itemFromNormalImage:@"pausebutton.png" 
                                                              selectedImage:@"pausebutton.png" // TODO add selected image
                                                              disabledImage:@"pausebutton.png"
                                                                     target:self
                                                                   selector:@selector(pauseGame:)];
        pauseButton.position = ccp(24, 292);
        [self addChild:pauseButton];

问题是我的pauseGame:当我触摸暂停按钮时,选择器永远不会被触发!

我已经通过执行[pauseButton activate](调用选择器)验证了选择器设置正确。

此外,我已通过在ccTouchesBegan和ccTouchesEnded中输出日志信息来验证我的图层正在响应触摸。

值得注意的是,我的图层中有精灵,它们会自行注册以获得触摸:

- (void) onEnter
{
    [[CCTouchDispatcher sharedDispatcher] addTargetedDelegate:self priority:0 swallowsTouches:YES];
    [super onEnter];
}

问题是什么?

1 个答案:

答案 0 :(得分:2)

嗯......你没有添加到CCMenu ......

CCMenu* menu = [CCMenu menuWithItems:pauseButton, nil];
menu.isTouchEnabled = YES;
[self addChild:menu];

请注意,您的pausegame应为:

-(void)pauseGame:(id)sender
{
//pause game!!!
}