java - LibGdx 新屏幕对旧屏幕的触摸有反应

标签 java button libgdx listener

我正在制作 LibGdx 游戏。我有一个带有按钮的主菜单,可以将用户发送到播放屏幕。但是,在播放屏幕时,游戏的 react 与用户在前一屏幕中按钮所在的位置单击时的 react 一样。下面是定义按钮和切换屏幕的代码:

button = new TextButton("Play", button_text);
button.setWidth(Gdx.graphics.getWidth() / 4);
button.setHeight(Gdx.graphics.getHeight() / 8);
button.setPosition((Gdx.graphics.getWidth() / 2) - (button.getWidth() / 2), (Gdx.graphics.getHeight() / 2) - (button.getHeight() / 2));
stage.addActor(button);
Gdx.input.setInputProcessor(stage);
button.addListener(new InputListener(){
    @Override
    public boolean touchDown(InputEvent event, float x, float y, int pointer, int button){
        game.setScreen(new PlayScreen(game));
        dispose();
        return true;
    }
});

下面是这个屏幕的处理方法:

    @Override
public void dispose() {
    stage.dispose();
}

那么如何在从一个屏幕移动到下一个屏幕之前清除所有输入?

最佳答案

添加dispose方法

Gdx.input.setInputProcessor(null);

会被修复

关于java - LibGdx 新屏幕对旧屏幕的触摸有反应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26288988/

相关文章:

java - 实用程序类保存对接口(interface)的引用不好?

java - 有没有办法让 selenium 存储 cookie,以便我可以在 java 代码中调用它?

Java:使用 POST 登录时处理 cookie

c# - 只允许打开一次窗口

LibGdx 弓箭游戏物理

java - 如何在 Android 设备上通过 libGDX 首选项正确保存游戏进度?

java - 减小签名后的 apk 大小

javascript - Froala的所有工具栏按钮

android - 使用 RoboVM 将 App 上传到 Apple 的 App Store 时出现问题

c# - 使用 C# 一键选中复选框列表中的所有复选框