在安卓中。我实现了一个 InputProcessor 并且:
@override public boolean keyDown(int keycode)
当我按 Escape 时,没有检查任何键并且应用程序退出。如何检查 Escape 键?
ps:在PC/MAC中,我可以直接勾选Escape,就可以了。
这对我有用:
public boolean keyDown(int keycode){
switch (keycode){
case Keys.ESCAPE:
Gdx.app.log("Monles", "ESC pressed");
break;
...
此外,当我按 ESCAPE 时,我的应用程序不会退出,但如果你这样做,这可能会解决它:
Gdx.input.setCatchBackKey(true);
首先创建一个 InputProcessor 来处理返回键操作,然后将其添加到多路复用器中,以便其他组件仍然接收类似的事件。
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);
并启用捕获返回键。
Gdx.input.setCatchBackKey(true);
这就是全部。祝你好运!