Java 在LibGDX InputProcessor中,每个KeyDown()是否都有相应的KeyUp()?

Java 在LibGDX InputProcessor中,每个KeyDown()是否都有相应的KeyUp()?,java,libgdx,boolean,keydown,keyup,Java,Libgdx,Boolean,Keydown,Keyup,我希望在按下按钮时将布尔值设置为true,这对于释放同一按钮时将其设置为false非常重要 public boolean keyDown (int keycode) { switch (keycode) { case Keys.RIGHT: player.movingRight = True; //or //player.xVel = 1; break; public boolean ke

我希望在按下按钮时将布尔值设置为true,这对于释放同一按钮时将其设置为false非常重要

 public boolean keyDown (int keycode) {

     switch (keycode) {
         case Keys.RIGHT:
         player.movingRight = True;
         //or
         //player.xVel = 1;
         break;

 public boolean keyUp (int keycode) {

     switch (keycode) {
         case Keys.RIGHT:
         player.movingRight = False;
         //or
         //player.xVel = 0;
         break;

这是一种安全的方法来实现人们想要的结果,还是会有布尔值保持为真的情况?

我认为这种方法是安全的

可供考虑的案例有哪些

无论何时我们按下键,我们都会将其设置为true,无论何时我们按下键,我们都会将其设置为false

但是

在我看来,使用isKeyPressed或isKeyJustPressed是实现您想要的最好方法


查看此差异。

可能发生以下情况:1.-用户按住键。2.-用户最小化/切换到另一个窗口/应用程序。3.-用户释放密钥。然后,该键没有调用keyup。但是在这种情况下,我们可以保证pause()代码运行,而且如果用户退出了我们知道调用了dispose的程序,那么这些问题不会产生太多问题,但是非常感谢。@Lestat实际上我做了一些实验,结果是keyup()在暂停之前自动调用。所以这根本不是一个问题。这很好,我不知道。