1

私のゲームでは、新しいレベルをロードすると、以前のレベルがまだビューに残っているように見えます。各レベルには独自のクラスがあり、すべて画面に何かを描画します。そのため、2 つ以上のレベルの画像をロードすると、ゲームが非常に遅くなります。前のレベルをアンロードするにはどうすればよいですか? 前もって感謝します..

- (void) finishedLevel: (Level *) level
{

        levelNumber++;
    levelClass = NSClassFromString([NSString stringWithFormat:
                                    @"Level_%d", levelNumber]);
    if (!levelClass) levelClass = [Level class];

    currentLevel = [[levelClass alloc] initWithView: self.mainView];

    self.mainView.levelLabel.text = [NSString stringWithFormat:@"Level %d", levelNumber];

    gameRunning = NO;
}

以下を使用してみましたが、実際には機能しませんでした

levelClass = NSClassFromString([NSString stringWithFormat:@"Level_%d", levelNumber-1]);

    [levelClass removeFromSuperview];

エラーメッセージ

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '+[Level_1 removeFromSuperview]: unrecognized selector sent to class 0x107644'
4

0 に答える 0