我正在尝试使用gdx.input
作为libgdx的一部分来检测何时释放触摸点。我知道Android的方式确定触摸点的释放时间如here所述,但我正在寻找一种特定于libgdx的方法。
如何检测触摸何时被释放?我找不到在gdx.input
中执行此操作的方法。
答案 0 :(得分:5)
根据libgdx wiki,您必须实现InputProcessor
接口。在界面中有一个名为touchUp
的函数,在释放触摸时应该调用它。
您可以在此处阅读有关libgdx的所有触控输入:http://code.google.com/p/libgdx/wiki/InputEvent
维基上有一个相当简单的例子。这是实现的界面:
public class MyInputProcessor implements InputProcessor {
@Override
public boolean keyDown (int keycode) {
return false;
}
@Override
public boolean keyUp (int keycode) {
return false;
}
@Override
public boolean keyTyped (char character) {
return false;
}
@Override
public boolean touchDown (int x, int y, int pointer, int button) {
return false;
}
@Override
public boolean touchUp (int x, int y, int pointer, int button) {
return false; /* This should be what you're looking for. */
}
@Override
public boolean touchDragged (int x, int y, int pointer) {
return false;
}
@Override
public boolean touchMoved (int x, int y) {
return false;
}
@Override
public boolean scrolled (int amount) {
return false;
}
}
如何将您的类设置为侦听器:
MyInputProcessor inputProcessor = new MyInputProcessor();
Gdx.input.setInputProcessor(inputProcessor);