Android LibGDX-TextField-TextInputListener
当您点击LibGDX中的文本字段时,它有时会停留在屏幕键盘后面。你看不到你正在键入的内容。 我使用TextInputListener来避免此问题:Android LibGDX-TextField-TextInputListener,android,libgdx,textfield,on-screen-keyboard,Android,Libgdx,Textfield,On Screen Keyboard,当您点击LibGDX中的文本字段时,它有时会停留在屏幕键盘后面。你看不到你正在键入的内容。 我使用TextInputListener来避免此问题: textPassword.setOnscreenKeyboard(new TextField.OnscreenKeyboard() { @Override public void show(boolean visible) { Gdx.input.getTextInput(new Input.TextInputList
textPassword.setOnscreenKeyboard(new TextField.OnscreenKeyboard() {
@Override
public void show(boolean visible) {
Gdx.input.getTextInput(new Input.TextInputListener() {
@Override
public void input(String text) {
textPassword.setText(text);
}
@Override
public void canceled() {
}
}, "" , "", "");
}
});
但通过这种方式,可以通过两个步骤输入数据:
步骤1:
步骤2:
这不是一个用户友好的方法
是否可以跳过第一步直接开始第二步?在Android中,有一些关键字可用于此目的。比如说,
<activity
android:name=".example"
android:theme="@style/AppTheme.NoActionBar"
android:windowSoftInputMode="adjustResize" />
调整大小,调整大小|状态隐藏,调整范围,调整范围|调整大小
您应该在运行应用程序的Android Manifest.Xml中尝试这些。 但我不确定这是否仍然适用于基本上使用OpenGL后端创建的LibgdxFrame。我建议,如果可能的话,你应该把你的对话框放在靠近屏幕顶部的位置
请注意,如果您想在我的游戏中部署到iOS,这个问题可能会发生在iOS设备上。在我的游戏中,如果没有硬件键盘连接(
isPeriphalAvailable
),当用户点击文本字段时,我会打开一个文本输入对话框(Gdx.input.gettemiput
)。我建议您也这样做,以避免出现典型问题。这实际上在libgdx上不起作用。在任何情况下,调整大小很少是需要的,而且adjustPan
有时会将输入推出屏幕。因此,对话是一种方式。