Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/206.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_Android_Libgdx - Fatal编程技术网

Java 如何使用libgdx获得触摸事件修补

Java 如何使用libgdx获得触摸事件修补,java,android,libgdx,Java,Android,Libgdx,当他的手指移开时,我试图改变屏幕 我试过这样做 if (Gdx.input.isTouched(0)) { camera.unproject(_touchPoint.set(Gdx.input.getX(), Gdx.input.getY(), 0)); //stuff... } 现在,当用户离开他的手指时,我想改变屏幕 也尝试使用此呼叫 Gdx.input.setInputProcessor(processor); 但是,不知道如何在渲染方法中检查/使用此事件。 请帮我解决这个问题。当你使

当他的手指移开时,我试图改变屏幕 我试过这样做

if (Gdx.input.isTouched(0)) {
camera.unproject(_touchPoint.set(Gdx.input.getX(), Gdx.input.getY(), 0));
//stuff...
}
现在,当用户离开他的手指时,我想改变屏幕 也尝试使用此呼叫

Gdx.input.setInputProcessor(processor);
但是,不知道如何在渲染方法中检查/使用此事件。 请帮我解决这个问题。

当你使用

Gdx.input.setInputProcessor(processor);
您不必在渲染方法中调用任何函数。Libgdx将直接在处理器中回拨有关各种事件的信息。您只需编写代码即可更改处理器(InputProcessor)触摸功能中的屏幕。使用此链接可获得更多说明

您可以检测事件,只需从
屏幕
子类覆盖适当的方法即可-

@Override
public boolean touchUp(int x, int y, int pointer, int button) {         
    boolean res = super.touchUp(x, y, pointer, button);

    // Do your stuff here

    return res;
}

让您的类实现
InputProcessor
并调用
Gdx.input.setInputProcessor(this)

布尔isTouched=Gdx.input.isTouched()

只需使用
Gdx.input.justtouch()
而不是
istouch()

您能否详细说明您的答案,并添加一点关于您提供的解决方案的说明?