Java-Libgdx:检查用户';在文本字段中输入什么?

Java-Libgdx:检查用户';在文本字段中输入什么?,java,if-statement,input,libgdx,textfield,Java,If Statement,Input,Libgdx,Textfield,我的if..else语句: if(réponse.getText().equals("")){ réponse.setText(""); } else if(réponse.getText().equals("riviere")){ game.setScreen(new Stage1(game)); music.stop(); } else if(!réponse.getTex

我的if..else语句:

if(réponse.getText().equals("")){
            réponse.setText("");
        } else if(réponse.getText().equals("riviere")){
            game.setScreen(new Stage1(game));
            music.stop();
        }
        else if(!réponse.getText().equals("riviere")){
            ecrireLeTexte = true;
        }
我创建了一个textfield,然后马上检查里面有什么,但是我担心用户在textfield检查之前不能键入任何内容


那么,在用户输入之后,如何检查用户的输入呢

您可以在渲染方法中进行检查,以便在每帧调用该方法,或将TextFieldListener设置为TextField以侦听更改

réponse.setTextFieldListener(new TextField.TextFieldListener() {
    @Override
    public void keyTyped(TextField textField, char c) {
        //Here you can compare the text
    }
});

还记得将阶段设置为InputProcessor fe<代码>Gdx.input.setInputProcessor(阶段)

我不完全确定你在问什么,所以最好再澄清一点。但是,您的代码也有点马虎:为什么要使用第一个
if
语句?这是相当多余的。您只需删除它,然后将
else if
转换为第一个
if
。此外,字符串是确定用户选择的一种非常脆弱的方法,因为它们很容易拼错单词等。至少您可以先将
响应
字符串小写,这会提供一个稍微更可靠的比较,但仍然很难推荐。您的问题非常不清楚。另外,你似乎已经在你能想到的每一个标记上找到了它们与问题的相关性。我不想得到一个字符,但我是字符串,我该怎么做?如果你想得到整个文本,你应该在监听器中使用
textField.getText()
。但是,如果您只想将char c转换为string,您可以使用
string.valueOf(c)
谢谢您的快速回答,但我没有得到它,您可以在下面的代码中显示我吗?réponse.setTextFieldListener(new TextField.textfieldstener(){@Override public void keyTyped(TextField TextField,char c){if(réponse.getText().equals(“vie”){System.out.println(“okok”);game.setScreen(新的BienOuej(游戏));music.stop();}否则如果(!réponse.getText().equals(“vie”){game.setScreen(新的Druide2(游戏));music.stop();}});如果是:textField.getText();在侦听器中,它只返回1个字符,而不是完整的字符串“vie”