按钮ClickListener在LibGDX游戏中不起作用

san*_*dee 17 java android libgdx

我正在使用LibGDX开发Android游戏.菜单屏幕中有4个按钮,但ClickListener这些按钮不起作用.

// retrieve the custom skin for our 2D widgets
Skin skin = super.getSkin();

// create the table actor and add it to the stage
table = new Table( skin );
table.width = stage.width();
table.height = stage.height();
stage.addActor( table );

// retrieve the table's layout
TableLayout layout = table.getTableLayout();

// register the button "start game"
TextButton startGameButton = new TextButton( "Start game", skin );
startGameButton.addListener( new ClickListener() {
    @Override
    public void clicked(InputEvent event, float x, float y) {
        System.out.println("hiii");
        Assets.load();
        // game.getSoundManager().play( TyrianSound.CLICK );
        game.setScreen( new GameScreen(game) );
    }
} );

layout.register( "startGameButton", startGameButton );
Run Code Online (Sandbox Code Playgroud)

如何激活ClickListenerLibGDX中的按钮?

rob*_*mag 50

您必须将按钮添加到舞台并调用

Gdx.input.setInputProcessor(stage);
Run Code Online (Sandbox Code Playgroud)


nsa*_*ote 15

而不是"点击方法"现在它是"点击方法"(我想!),以防万一有人面临同样的问题我遇到了这个问题:

startGameButton.addListener( new ClickListener() {              
    @Override
    public void clicked(InputEvent event, float x, float y) {
        game.setScreen( new GameScreen(game) );
    };
});
Run Code Online (Sandbox Code Playgroud)