libGDX touchDown困难

时间:2014-11-14 13:09:18

标签: java android libgdx

我在代码中实现touchDown推荐时遇到问题 我正在使用Iterator在屏幕上运行代表球纹理的圆圈。 在下面的代码中,我将所有不相关的部分切割成当前用户触摸时从屏幕上移除球\圆圈的问题。目前我在渲染中调用方法并使用:

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

并使用“input”作为“ballsIterator(input);”的参数。问题是我被告知要停止触摸效果我需要使用touchDown方法中的代码。但是我怎么能这样做呢?我不得不在渲染方法中使用完整版本的方法,无论是否具有降落效果,我尝试实现InputProcessor并在touchDown方法中重复方法的代码,但不在render方法中调用它,因此它没有工作,当我试图在渲染中调用它时,我不知道用于“int指针,int按钮”的参数... 问题是,在上述所有问题之后,如何在我的代码中使用touchDown方法?

private void ballsIterator(Vector3 input){
    Iterator<Circle> iterBall = balls.iterator();
    while (iterBall.hasNext()) {
        Circle ball = iterBall.next();
        if (dog.velocity.x != 0) {

            if (ball.contains(input.x, input.y)) {
                iterMeteor.remove();
            }
        } else {
            iterMeteor.remove();
        }
    }
}

1 个答案:

答案 0 :(得分:0)

使用Springbua解释我设法通过划分Iterator方法来解决我的问题。重复必要的部分,并将负责点击的代码复制到一个新的公共静态void方法,并将Vector3作为参数,并在实现InputProcessor的类中创建了一个Vector3,为它提供了touchDown参数,称为新的Iterator方法,按住click部分并使用InputProcessor类的Vector3作为参数。

相关问题