For my game, I\'d like the Android back button to take you to the pause menu, instead of minimizing the game. From what I\'ve googled, I know I need to call
You can use Gdx.input.isKeyPressed method.
if (Gdx.input.isKeyPressed(Keys.BACK)){
// Do something
}
You can use Gdx.input.isKeyPressed(Keys.BACK) but if you want that Activity does not closes you can handle this as:
Gdx.input.setCatchBackKey(true);
I solved the problem like this:
public class MyApplication implements ApplicationListener, InputProcessor {
// !! Remember to override all other required methods !!
...
@Override
public void create() {
Gdx.input.setInputProcessor(this);
Gdx.input.setCatchBackKey(true);
// rest of your stuff...
}
...
@Override
public boolean keyDown(int keycode) {
if(keycode == Keys.BACK){
// Do your optional back button handling (show pause menu?)
}
return false;
}
...
}
Not copypasta stuff but hopefully this helps you out. :)
First create an InputProcessor to handle the back key actions and then add it to a multiplexer so that other components still receive similar events.
InputProcessor backProcessor = new InputAdapter() {
@Override
public boolean keyDown(int keycode) {
if ((keycode == Keys.ESCAPE) || (keycode == Keys.BACK) )
// Maybe perform other operations before exiting
Gdx.app.exit();
return false;
}
};
InputMultiplexer multiplexer = new InputMultiplexer(mStage,
backProcessor);
Gdx.input.setInputProcessor(multiplexer);
And enable catching the back key.
Gdx.input.setCatchBackKey(true);
That's all there is. Good luck!