Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java libgdx触地在触地或触地移动之前不触发_Java_Windows_Libgdx - Fatal编程技术网

Java libgdx触地在触地或触地移动之前不触发

Java libgdx触地在触地或触地移动之前不触发,java,windows,libgdx,Java,Windows,Libgdx,我在Windows10/7触摸屏上使用libGDX。我试着倾听用户手指触摸屏幕的那一刻。我已经尝试了触地事件和在渲染循环中触动的读取 public void render(float delta) { if(Gdx.input.isTouched()){ this.screenInput(); } game.batch.begin(); stage.draw(); game.batch.end(); } 及 我甚至尝试在Gdx.input.g

我在Windows10/7触摸屏上使用libGDX。我试着倾听用户手指触摸屏幕的那一刻。我已经尝试了触地事件和在渲染循环中触动的读取

public void render(float delta) {
    if(Gdx.input.isTouched()){
      this.screenInput();
    }
    game.batch.begin();
    stage.draw();
    game.batch.end();
}

我甚至尝试在Gdx.input.getX()中监听更改。所有这些方法都会触发,但前提是我抬起或移动手指。和触地一样,只有当我抬起或移动手指时,才可能触碰或改变getX,而不是在初次按下时。只要我在按下后手指仍停留在屏幕上,我什么也看不到

我开始怀疑这是我遇到的操作系统级问题。如果我可以调整Windows上的触摸设置来解决这个问题,这也是可以接受的


即使我没有做任何明显错误的事情,我也想知道是否有人有过在第一次按下按钮时不触发触地的经验,或者是否确实在第一次触地时触发触地的经验,这样我就知道我是不是找错了方向。

我怀疑是操作系统。LibGDX依赖于来自JVM的点击事件。Windows可能只在完成yap和发布后才注册单击。这可能与返回有关吗?试着在控制台上打印一些东西,然后返回false。我试着从screenInput返回true和false,也试着打印并用布尔值替换调用,但没有成功。我怀疑Tenfour04所说的是正确的,但是类似的“touchstart”事件在浏览器中测试的JavaScript中注册得很好(这里测试:),而且Java的触地不会由相同的操作系统事件触发似乎很奇怪。如果Java依赖JVM对点击进行所有操作,这将解释问题,但这是不幸的。
Gdx.input.setInputProcessor(new InputAdapter () {
    @Override
    public boolean touchDown (int x, int y, int pointer, int button) {
        return screenInput();
    }
});