noo*_*one 17
不幸的是,没有更简单的方法.这些类不会共享任何类型的常用" Disposable"界面,或类似的东西,以自动执行.具有dispose()方法的所有东西都需要在不再需要时手动处理.
这对Screens他们自己也有效.切换时,Screens它们不会自动处理,但您需要自己(在致电之前Game.setScreen())这样做.
另一方面,这不是什么大问题.只需查看您的所有内容,Screen检查是否需要处理.如果有一个Dispose方法,调用它dispose()的Screen.
但这并没有解释你对最后一个隐形按钮的行为Screen.我想你使用Stage和使用Gdx.input.setInputProcessor(stage);.更改屏幕时,此设置不会更改,您必须将输入处理器设置为Stage当前的输入处理器Screen,或处理当前输入处理器的任何设置Screen.这样,"旧"阶段将不再捕获任何输入.