如何在发动机中正确销毁和重建场景?

Cla*_*aro 5 java android andengine

在andAngine中我需要在andangine中销毁一个场景并重新创建它以重新启动游戏变量和监听器以及gamelogic.我用这个代码:

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

System.gc();
thisengine.setScene(menuscene);
Run Code Online (Sandbox Code Playgroud)

然后我重新创建场景

scene = new Scene();
scene.dosomestuff
thisengine.setScene(scene);
Run Code Online (Sandbox Code Playgroud)

当我重新创建第三次场景时,似乎出现了问题.精灵不显示..扭曲或根本不显示.如果我正确初始化并破坏场景,有人可以向我解释吗?

jmr*_*lty 4

就我个人而言,我会在第一次使用场景时创建场景。

要更改场景,请按照您所展示的那样进行删除操作,我不会费心调用 System.gc(),然后不创建新的 Scene() - 只需调用 scene.reset(),场景.dosomestuff 等

创建一个像您展示的新场景看起来像是一个主要的内存泄漏,或者至少是一个可能的泄漏。