2013-12-15 73 views
2

我试图在LibGdx中单击文本框时在Android设备上显示键盘。但据我所见,必须手动检测文本字段的时间,然后通过调用Gdx.input.setOnscreenKeyboardVisible(true)来显示键盘?在Libgdx中显示键盘

这是我到目前为止的代码:

textfield= new TextField("", skin); 
    textfield.setSize(300, 50); 
    textfield.setPosition((SCREEN.WIDTH/2) - textfield.getWidth()/2, 0); 

    //Gdx.input.setOnscreenKeyboardVisible(true); 

    //Gdx.input.getTextInput(this, "SOME TITLE" "TEXT"); 

    textfield.setTextFieldListener(new TextFieldListener() 
    { 
     @Override 
     public void keyTyped(TextField textField, char key) 
     { 
      if (key == '\n') 
      { 
       textField.getOnscreenKeyboard().show(false); 
      } 
     } 
    }); 

感谢您的帮助!

+1

键盘通常会自动在文本字段获得焦点或示出被触摸。你不应该手动做。你是否将你的舞台设置为输入处理器? –

+0

@ nEx.Software试着像你说的那样做,而且这似乎很好。提供您的评论作为答案,我会接受它:) – Araw

回答

3

从评论继续前行原来的职位(和编辑更答案样):

的键盘通常会自动在文本字段获得焦点或显示被触摸。你不应该手动做。这需要阶段要注册为经由该呼叫的输入处理器:

Gdx.input.setInputProcessor(stage);