追回和家庭钥匙

时间:2014-09-03 01:30:24

标签: libgdx

在用libGDX v1.3.1设置我的新项目之后,我遇到了一些应该很容易的事情。在我扩展游戏的主要课程中:

Gdx.input.setCatchBackKey(true); 

但我无法得到任何回应(在渲染方法中):

if(Gdx.input.isButtonPressed(Keys.BACK)){
    this.dispose();
}

虽然我可以看到在logCat控制台中按下按钮,但没有按下任何内容。

我需要提一下,我使用完全相同的代码,直到libGDX版本1.0.0(或第一个使用gradle)。

注意:我也尝试过实现InputProcessor,然后设置输入处理器。结果是一样的。

对于主页按钮:使用Gdx.input.setCatchMenuKey(true);无效。

1 个答案:

答案 0 :(得分:2)

使用isKeyPressed代替isButtonPressed。按钮仅指桌面游戏上的三个鼠标按钮。 Android上的所有内容都是Key(或Peripheral)。

你提到了#34;主页按钮"但您发布的代码是菜单按钮。没有办法抓住主页按钮,除非你让你的清单宣布你的应用程序作为启动器更换,在这种情况下,主页按钮将始终打开你的应用程序,即使它已关闭,用户将没有轻松的方式进入主屏幕。并且libgdx没有内置的功能,因为那会很奇怪。您必须自己在清单和主要活动中实现它。

此外,处理this,无论this是什么,从输入处理程序中听起来都很危险。你可能会渲染东西并导致崩溃。但我不确定你在哪里尝试使用它。也许没关系。