如何在 LibGDX Scene2D 中为 CheckBox 正确创建鼠标监听器?

How to properly create a mouse Listener for CheckBox in LibGDX Scene2D?

我已经在线搜索了几个小时,我是 LibGDX 游戏开发的新手。 这个 link 很有用,但我仍然无法使我的 CheckBox 工作。 How to properly implement CheckBox in LibGDX

我正在使用 LibGDX,我必须在我的菜单中实现两个单选按钮。

我创建了两个 CheckBox 并为它们指定了样式。

    check_style = new CheckBox.CheckBoxStyle();
    check_style.font = font;
    check_style.fontColor = new Color(Color.WHITE);
    check_style.checkboxOff = check_skin.getDrawable("checkbox");
    check_style.checkboxOn = check_skin.getDrawable("checkbox2");
    check_style.checked = check_skin.getDrawable("checkbox2");

我还添加了一个侦听器来通知鼠标点击

    controls1Check.addListener(new InputListener() {
        public void touchUp (InputEvent event, float x, float y, int pointer, int button) {
            controls1Check.toggle();
            System.out.println("toggle");
        }
        public boolean touchDown (InputEvent event, float x, float y, int pointer, int button) {
           System.out.println("Controls1: " + controls1Check.isChecked());
           return true;
        };
    });

当我 运行 我的程序不响应任何鼠标点击。 我该如何解决这个问题?

谢谢!

我猜你要把你的 CheckBox 添加到 Stage?如果是这样,我唯一的想法是也许你没有调用 Gdx.input.setInputProcessor(yourStage); 所以即使你的 CheckBoxes 有 InputListeners,输入实际上没有被处理。