如何在Libgdx中管理多个屏幕的后退按钮?

前端之家收集整理的这篇文章主要介绍了如何在Libgdx中管理多个屏幕的后退按钮?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如果有一些方法可以管理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.

猜你在找的Java相关文章