如果有一些方法可以管理Libgdx中的后退按钮?
例如在Andengine中我实现了这样:
@Override public boolean onKeyDown(int keyCode,KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_DOWN) { switch (currentScene) { case SPLASH: break; case MENU: Process.killProcess(Process.myPid()); break; case WORLDMENU: start(MENU); break; ... ... } } }
我不知道如何在这里做,因为ApplicationListener只有create,show,render …
我试过这个:
if (Gdx.input.isButtonPressed(Keys.BACK)){ new ScreenChangeTask(MyScreen.SPLASH); }
但它仍然关闭我的申请.
仅供参考:我有类控制器扩展游戏,我使用public void setScreen(屏幕屏幕)在屏幕之间切换.
解决方法
为了正确地执行此操作,您需要告诉LibGDX捕获后退键:
Gdx.input.setCatchBackKey(true);
您应该在应用程序的早期某处执行此操作.如果希望用户能够使用后退键,请将其设置为false.