2013-01-21 45 views
0

我正在尝试使淡出淡出使用黑色PNG图像在cocos 2d中产生效果。它是为了更好地展示一些东西,而不是随便的方式......淡入淡出科科斯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]; 
} 

回答

0

你不指定为预期的是不工作的,但在我看来,你是不是添加effectScreen任何层,其他的节点,以便它可以被显示。

至于其他方面,代码似乎对我来说是正确的(除了fadeIn,fadeOut,fadeSequence未使用)。

编辑:

你肯定是在ObjC/C感测使用effectScreen;你不这样做是做类似的东西添加到您的场景:

[self addChild:effectScene]; 

(假设self是您的场景或其他CCNode类)。

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

+0

对不起,我是新的。那么,我不使用effectScreen精灵?这就是为什么在CCSequence中,会出现一个警告,告诉'未使用的变量'fadeSequence'不是吗? – Vergmort

+0

几乎正确,但请参阅我的编辑以获取更多解释。 – sergio

+0

伟大的东西。所以我必须做这个例子? [“MenuNameClass”addChild:effectScreen]; 导致出现警告:未找到类方法'addchild'(返回类型默认为“id”) – Vergmort