有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java LibGdx多点触摸事件混淆

所以我有3个矩形,它们的作用类似于contains方法中的按钮。前两个按钮只是左右移动角色,但第三个按钮是在用户触地时跳跃,然后在触地时抛出一个球。 我的问题是,当同时触碰按钮时,这些会混淆,就像我按住跳跃按钮,同时按住并松开左/右按钮时,它会抛出球

我知道有指针id的东西,但对我来说它让我很困惑


共 (1) 个答案

  1. # 1 楼答案

    将新的InputProcessor设置为Gdx。输入设置InputProcessor(),并检查触摸点是否包含在矩形中,类似的操作应该可以:

         Gdx.input.setInputProcessor(new InputAdapter() {
            @Override
            public boolean touchDown(int screenX, int screenY, int pointer, int button) {
                if(leftRect.contains(screenX, screenY)){
                    //move player left
                    return true;
                }
    
                if(rightRect.contains(screenX, screenY)){
                    //move player right
                    return true;
                }
    
                return false;
            }
    
            @Override
            public boolean touchUp(int screenX, int screenY, int pointer, int button) {
                if(jumpRect.contains(screenX, screenY)){
                    //make player jump
                    return true;
                }
                return false;
            }
        });
    

    我强烈建议你在ui相关的东西上使用Scene2D,这可能有点难,但它会让你的ui编码更容易实现和维护