4

Why is my TextButton, from libgdx not responding on clicks?

I have a button, this button has a Listener, but it doesn't respond. The button is showing, but it doesn't respond on mouse clicks.

public MyStage extends Stage {
     ...
     next.addListener(new InputListener() {
        @Override
        public boolean touchDown(InputEvent event, float x, float y, int pointer, int button)
        {
            Gdx.app.log(ApothecaryGame.LOG, "Pressed: Next button.");
            return true;
        }
        @Override
        public void touchUp(InputEvent event, float x, float y, int pointer, int button) {
            Gdx.app.log( ApothecaryGame.LOG, "Released: Next button.");
            super.touchUp( event, x, y, pointer, button );
            nextPage();
        }
    } );
    this.addActor(next);
}
Daahrien
  • 10,190
  • 6
  • 39
  • 71

1 Answers1

15

Add a ClickListener to your button. It'll look something like this.

button.addListener(new ClickListener() {
    public void clicked(InputEvent event, float x, float y) {
        // Do something interesting here...
    }
});

Also, make sure that you set the stage to be an input processor, otherwise it won't see the events.

Gdx.input.setInputProcessor(stage);
R Hyde
  • 10,301
  • 1
  • 32
  • 28
  • 1
    Make sure to add `Gdx.input.setInputProcessor(stage);` into the `public void show(){}`method – Till Jan 07 '16 at 19:04