0

黒のpng画像を使用して、cocos2dでフェードインフェードアウト効果を作成しようとしています。カジュアルな方法ではなく、何かを示すためのより良い方法を作るためです...

このコードに何か問題がありますか?

- (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];
}
4

1 に答える 1

0

期待どおりに機能していないものを指定していませんが、effectScreen表示できるようにレイヤーや他のノードに追加していないようです。

fadeIn残りに関しては、コードは私には正しいようです(使用されていない、fadeOutを除いてfadeSequence)。

編集:

あなたは間違いなくObjC/C の意味で使用しています。 effectScreenあなたがしていないのは、次のようなことをしてシーンに追加することです:

[self addChild:effectScene];

self(あなたのシーンまたは別のCCNodeクラスであると仮定します)。

ObjC/C の意味で使用していないため、使用しないということfadeSequenceは少し異なります。それを定義し、二度と参照することはありません。

于 2013-01-21T17:34:53.180 に答える