がありCCMenuItem
、アニメーションが終了するまで無効にしたいのですが、すべてのタッチを無効にしたくありません:
[CCDirector sharedDirector].touchDispatcher.dispatchEvents = NO;
簡単な解決策はありますか?
がありCCMenuItem
、アニメーションが終了するまで無効にしたいのですが、すべてのタッチを無効にしたくありません:
[CCDirector sharedDirector].touchDispatcher.dispatchEvents = NO;
簡単な解決策はありますか?
CCMenuItem を無効にすることができます
CCMenuItem *item = [[CCMenuItem alloc] initWith...];
item.isEnabled = YES;
後で有効にします。
最初にアニメーション アクションを使用するために使用CCSequence
します。それが完了したら、as パラメーターを使用して関数を呼び出すアクションを作成し、CCMenuItem
その関数でそれを有効にします。
コード例: (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;
}