我有一个CCMenuItem
并且我想禁用它直到动画完成,但我不想禁用所有触摸:
[CCDirector sharedDirector].touchDispatcher.dispatchEvents = NO;
有什么简单的解决办法吗?
我有一个CCMenuItem
并且我想禁用它直到动画完成,但我不想禁用所有触摸:
[CCDirector sharedDirector].touchDispatcher.dispatchEvents = NO;
有什么简单的解决办法吗?
用于CCSequence
首先使用动画动作,完成后创建一个动作,该动作使用CCMenuItem
as 参数调用函数,并在该函数中启用它。
代码示例:(PS:很久没用cocos2d了。)
{
...
CCMenuItem *menuItem = [CCMenuItem itemWith...];
menuItem.isEnable = NO;
CCMenu *menu = [CCMenu menuWithItems:menuItem, nil];
[self addChild:menu];
[menuItem runAction:[CCSequence actions:[CCAction actionWith...], [CCCallFunc actionWithTarget:self selector:@selector(enable:)], nil]];
...
}
-(void)enable:(CCMenuItem *)item {
item.isEnable = YES;
}
您可以使用禁用 CCMenuItem
CCMenuItem *item = [[CCMenuItem alloc] initWith...];
item.isEnabled = YES;
并在之后启用它。