1

1つのシーンを読み込もうとしています。これは最初は問題なく実行されますが、もう一度リロードしようとすると、アニメーションが配置されている白い四角が表示されます。

これは、シーンを開始および停止するためのコードです。私が欠けているものは何ですか?

ありがとう。

-(void)runScene:(OTAnimationCC2d *)animation
{
    scene = [CCScene node];

    [scene addChild:animation];

    if ([[[CCDirector sharedDirector] runningScene] isRunning])
    {
        [[CCDirector sharedDirector] replaceScene:scene];
    }
    else
    {
        [[CCDirector sharedDirector] runWithScene:scene];
    }

}
-(void)stopScene
{
    [[[CCDirector sharedDirector] runningScene] stopAllActions];
    [[[CCDirector sharedDirector] runningScene] removeAllChildrenWithCleanup:YES];
    [[CCDirector sharedDirector] pushScene:scene];

}
4

1 に答える 1

0

ではなく[self runScene]の最後で呼び出さないのはなぜですか? シーンを新しくリロードしたいようですね。stopScene[[CCDirector sharedDirector] pushScene:scene]runScenereplaceScene

いずれにせよ、新しいシーン ノードを作成して使用する必要がありますreplaceScene(これは で行われているrunSceneため、それを呼び出すことをお勧めします)。

于 2013-06-20T17:05:50.427 に答える