1

私のアプリケーションには、2 つのラベルと 1 つのメニュー項目しかないシーンがあります。メソッドを使用してこのシーンをロードするreplaceSceneと、3 ~ 4 秒間静止した後、消えるか解放されます。キャンセルボタンが押されるまで保持したい。どうすればいいですか?コードは次のとおりです。

@implementation MyLayer

+ (id)myScene {

    CCScene *aScene = [CCScene node];
    MYLayer *myLayer = [MyLayer node];
    [aScene addChild:myLayer];

    return aScene;  
}
- (id) init {

    if (self = [super init]) {
           //labels and menu here    
    }
    return self;
}

そして、次のような別のシーンから呼び出しています。

[[CCDirector sharedDirector] replaceScene: [MyLayer myScene]];
4

2 に答える 2

0

多分問題は、それがあなたの最初のシーンだということです. 次に、runWithSceneの方法を使用する必要がありCCDirectorます。

于 2011-02-17T19:09:15.680 に答える
0

そのシーンを「空の」初期化関数に置き換えて、それがまだ解放されるかどうかを確認しましたか? メモリに入れているテクスチャの量が原因である可能性があります

新しいシーンで使用される画像が大きすぎて、アプリのデリゲートによって自動的に削除され、空のシーンが返されることがあるため、以前にも同様の問題がありました。

于 2011-02-18T04:52:57.790 に答える