私がやろうとしているのは、私のアンドロイドデバイス上で指をドラッグして左右に長方形を動かすことです。私は指を持ち上げずに止まると、長方形が止まるようにしたい。これは可能ですか?私はどのようにタッチを終了できますか? LibGDX
マイInputHandlerコード:
@Override
public boolean touchDown(int screenX, int screenY, int pointer, int button) {
lastTouch.set(screenX, screenY);
return false;
}
@Override
public boolean touchDragged(int screenX, int screenY, int pointer) {
// Determines if my finger is moving to the left or right
Vector2 newTouch = new Vector2(screenX, screenY);
Vector2 delta = newTouch.cpy().sub(lastTouch);
// Moves the player right
if(delta.x > 0f) {
world.getPlayer().setVel(5.0f, 0f);
} else {
// Moves the player left
if(delta.x < 0f) {
world.getPlayer().setVel(-5.0f, 0);
}
// This is not being called
else
world.getPlayer().setVel(0f, 0f);
}
lastTouch = newTouch;
return false;
}
@Override
public boolean touchUp(int screenX, int screenY, int pointer, int button) {
world.getPlayer().setVel(0f, 0f);
return false;
}
戻り値を 'false'から' true'に変更しようとしましたか?それ以外の場合は、[GestureDetector](https://libgdx.badlogicgames.com/nightlies/docs/api/com/badlogic/gdx/input/GestureDetector.GestureAdapter.html)を見てください。特に 'pan()'と ' panStop() 'メソッドを呼び出します。 'InputMultiplexer'を使って複数の入力プロセッサを使うことができます。 – Marius
'touchDragged'でtrueを返さないと' touchDragged'と 'touchUp'は呼び出されません – Tenfour04