Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java LibGdx文本按钮侦听器_Java_Libgdx - Fatal编程技术网

Java LibGdx文本按钮侦听器

Java LibGdx文本按钮侦听器,java,libgdx,Java,Libgdx,我是新来的,我需要一些项目上的快速帮助 如果有人知道的话,我用LibGdx写一个小“Risiko”。我正在创建一个菜单,而我的文本按钮不起作用!!以下是重要部分: stage = new Stage[3]; stage[0] = new Stage(); stage[1]= new Stage(); stage[2]= new Stage(); batch = new SpriteBatch(); setBmap(new Texture("map.png"

我是新来的,我需要一些项目上的快速帮助

如果有人知道的话,我用LibGdx写一个小“Risiko”。我正在创建一个菜单,而我的文本按钮不起作用!!以下是重要部分:

stage = new Stage[3];
    stage[0] = new Stage();
    stage[1]= new Stage();
    stage[2]= new Stage();
    batch = new SpriteBatch();
    setBmap(new Texture("map.png"));

    inputMultiplexer=new InputMultiplexer();
    inputMultiplexer.addProcessor(this);

    inputMultiplexer.addProcessor(stage[0]);
    inputMultiplexer.addProcessor(stage[1]);
    inputMultiplexer.addProcessor(stage[2]);
    Gdx.input.setInputProcessor(inputMultiplexer);
    button = new TextButton[8];
    //Southamerica
    button[0] = new TextButton("Attack", textButtonStyle);
    button[0].setBounds(605,463, 100,40);
。。。创建按钮

    stage[0].addActor(button[0]);
    stage[0].addActor(button[1]);
    stage[0].addActor(button[2]);
    stage[1].addActor(button[4]);
    stage[1].addActor(button[5]);
    stage[1].addActor(button[6]);
    stage[2].addActor(button[3]);
    stage[2].addActor(button[7]);

    for(int i= 0; i <= 7 ; i++){
        button[i].addListener(new ClickListener(){
            @Override
            public void clicked(InputEvent event, float x, float y){
                System.out.println("Button action");
            }});
        }
    /*button[0].addListener(new ChangeListener() {
        public void changed (ChangeEvent event, Actor actor) {
            System.out.println("BUTTOn");
        }
    });*/
        button[0].addListener(new ClickListener(){
            @Override
            public void clicked(InputEvent event, float x, float y){
                System.out.println("BUTTON PRESSED!!");
            }});
我用不同的阶段画不同的菜单。仅供参考:D


谢谢你的回答

对不起,我现在收到了请求。我不明白我必须这样做:

inputMultiplexer=new InputMultiplexer();
inputMultiplexer.addProcessor(stage[0]);
inputMultiplexer.addProcessor(stage[1]);
inputMultiplexer.addProcessor(stage[2]);
inputMultiplexer.addProcessor(this);
Gdx.input.setInputProcessor(inputMultiplexer);
inputMultiplexer=new InputMultiplexer();
inputMultiplexer.addProcessor(this);
inputMultiplexer.addProcessor(stage[0]);
inputMultiplexer.addProcessor(stage[1]);
inputMultiplexer.addProcessor(stage[2]);
Gdx.input.setInputProcessor(inputMultiplexer);
不是这样的:

inputMultiplexer=new InputMultiplexer();
inputMultiplexer.addProcessor(stage[0]);
inputMultiplexer.addProcessor(stage[1]);
inputMultiplexer.addProcessor(stage[2]);
inputMultiplexer.addProcessor(this);
Gdx.input.setInputProcessor(inputMultiplexer);
inputMultiplexer=new InputMultiplexer();
inputMultiplexer.addProcessor(this);
inputMultiplexer.addProcessor(stage[0]);
inputMultiplexer.addProcessor(stage[1]);
inputMultiplexer.addProcessor(stage[2]);
Gdx.input.setInputProcessor(inputMultiplexer);
我喜欢它:D 撕开