如何在不抬起手指的情况下更改我按下的按钮? (在LibGDX中)

时间:2017-12-21 01:04:29

标签: java android user-interface button libgdx

我正在开发一款应用,我已按照此tutorial添加动作

但每当我将手指滑动到一个新按钮时,它仍然会识别按下按钮,按下按钮,导致必须抬起手指才能更换按钮。

我想找到一种允许滑动到新按钮的方法

我这样做的唯一方法是每当玩家按下屏幕时创建一个矩形,如果它与libgdx中Image类的按钮重叠,如果重叠,则向该方向移动,如果玩家移动他们的用手指移动矩形。

有更好的方法可以做到这一点,如果不是,我将如何检测它是否与图像重叠。

1 个答案:

答案 0 :(得分:1)

Arctic45所说的在我的课堂上有效,可以处理每个按钮的触控控件

leftImg.addListener(new InputListener() {

        @Override
        public void enter(InputEvent event, float x, float y, int pointer, Actor fromActor) {
            player.getComponent(MovementComponent.class).setGoLeft(true);
            super.enter(event, x, y, pointer, fromActor);
        }

        @Override
        public void exit(InputEvent event, float x, float y, int pointer, Actor toActor) {
            player.getComponent(MovementComponent.class).setGoLeft(false);
            super.exit(event, x, y, pointer, toActor);
        }
    });

当我运行它并按下按钮然后将其滑动到另一个按钮时它会更改按下按钮而无需触摸事件。