触摸后libGDX触摸有效

我使用下面的代码来将用户触摸与球对象的位置进行匹配,所以当用户触摸球时它会反弹回来。 码:

int x1 = Gdx.input.getX();
int y1 = Gdx.input.getY();
Vector3 input = new Vector3(x1, y1, 0);
cam.unproject(input);

if(ball.getBoundingCircle().contains(input.x, input.y)) {
ballBounce();
}

但是我的触摸有问题。 如果用户触摸屏幕上的某个位置一会儿,并且一个球(稍后出现一段时间)即将到达用户触摸的位置,球就会认出自己已经被触摸并且ballBounce(); 方法将开始,并继续与其他球到达相同的位置,直到用户触摸屏幕上的另一个位置,但是那个位置将被固定,直到新的位置...做一个人知道如何绕过这个问题,所以如果用户停止触摸屏幕,然后他触摸的位置不会影响球对象?


看来你没有使用任何输入处理器。 让你的类实现InputProcessor并让你的touchDown方法看起来像这样。

@Override
touchDown(InputEvent event, float x, float y, int pointer, int button) {
    Vector3 input = new Vector3(x, y, 0);
    cam.unproject(input);

    if (ball.getBoundingCircle().contains(input.x, input.y)) {
        ballBounce();
    }
}

ClickListener(LibGDX API)

链接地址: http://www.djcxy.com/p/66443.html

上一篇: libGDX touch in effect after touch

下一篇: How to iterate through SparseArray?