在Cocos 2d中淡入/淡出不起作用

时间:2013-01-21 17:30:47

标签: iphone ios ipad cocos2d-iphone

我正在尝试使用黑色png图像在cocos 2d中制作淡入淡出效果。它是为了更好地展示一些东西,而不是随意的方式......

这段代码有问题吗?

- (void) effectFade {

    CCSprite *effectScreen = [CCSprite spriteWithFile:@"black-iphone.png"];
    effectScreen.opacity = 0;

    [effectScreen runAction:[CCSequence actions:
                           [CCFadeIn actionWithDuration:1],
                           [CCCallFunc actionWithTarget:self selector:@selector(hideOutShowIn)],
                           [CCFadeOut actionWithDuration:1],
                           [CCCallFunc actionWithTarget:self selector:@selector(finish)],
                           nil]];
    CCFadeTo *fadeIn = [CCFadeIn actionWithDuration:1];
    CCFadeTo *fadeOut = [CCFadeOut actionWithDuration:1];

    CCSequence *fadeSequence = [CCSequence actionOne:fadeIn two:fadeOut];
}

1 个答案:

答案 0 :(得分:0)

您没有指定不按预期工作的内容,但在我看来,您没有将effectScreen添加到任何图层或其他节点,以便可以显示它。

至于其他方面,代码对我来说似乎是正确的(除了fadeInfadeOutfadeSequence之外没有使用过。)

编辑:

你绝对是在ObjC / C意义上使用 effectScreen;你没做的是通过做类似的事情将它添加到你的场景中:

[self addChild:effectScene];

(假设self是你的场景或另一个CCNode类。)

关于不使用fadeSequence的事情有点不同,因为你没有在ObjC / C意义上使用它:你定义它并且永远不再引用它。