Libgdx touchUp图像无法正常工作

时间:2016-08-18 10:30:53

标签: android libgdx

我有一个图像,我想要注册触摸,这样只有当用户触摸后将手指从屏幕上抬起时才会激活它(如果它在同一区域内提供了stil)...不会立即点击它。我试图像文档说的那样使用TouchUp,但无济于事

large_jackpot.addListener(new InputListener() {

        public boolean touchDown(InputEvent event, float x, float y, int pointer, int button) {
            Gdx.app.log("Example", "touch started at (" + x + ", " + y + ")");

            return true;
        }

        public void touchUp(InputEvent event, float x, float y, int pointer, int button) {
            Gdx.app.log("Example", "touch done at (" + x + ", " + y + ")");

            app.setScreen(app.loadingScreen);
        }

    });

1 个答案:

答案 0 :(得分:0)

你的听众没事。我猜你的问题出在事件系统中。 Image类之上的某些内容可能正在捕获 touchUp 事件,或者您未设置 InputProcessor 。此代码在libGDX生成的项目上按预期工作:

stage = new Stage();
Gdx.input.setInputProcessor(stage);
image = new Image(img);
image.addListener(new InputListener() {
    @Override
    public boolean touchDown(InputEvent event, float x, float y, int pointer, int button) {
        Gdx.app.log("Image","touchDown");
        return true;
    }

    @Override
    public void touchUp(InputEvent event, float x, float y, int pointer, int button) {
        Gdx.app.log("Image","touchUp");
    }
});
stage.addActor(image);

如果对您没有帮助,请提供更多代码。