5

andAngineでは、ゲーム変数とリスナー、およびgamelogicを再起動するために、andangineでシーンを破棄し、それを再作成する必要があります。私はこのコードを使用します:

scene.detachChildren();
scene.clearEntityModifiers();
scene.clearTouchAreas();
scene.clearUpdateHandlers();

System.gc();
thisengine.setScene(menuscene);

その後、シーンを再現します

scene = new Scene();
scene.dosomestuff
thisengine.setScene(scene);

3回目のシーンを再現すると、問題が発生したようです。スプライトが表示されない..歪んでいるか、何かがまったく表示されない。シーンを正しく初期化して破棄した場合、誰かが私に説明できますか?

4

1 に答える 1

4

個人的には、初めて使用するシーンを一度作成します。

シーンを変更するには、あなたが示したように削除作業を行います。System.gc()の呼び出しに煩わされることはなく、新しいScene()を作成する代わりに、scene.reset()、sceneを呼び出すだけです。 .dosomestuffなど

表示されているような新しいシーンを作成すると、重大なメモリリーク、または少なくともリークの可能性があるように見えます。

于 2012-05-24T16:13:36.300 に答える