Я пытаюсь поймать кнопку «Назад», когда TextField сфокусирован (клавиатура видна).LibGDX - как поймать подкладку внутри TextField с клавиатурой Android?
Я уже пробовал с Multiplexer
- установив «BackProcessor
» на вершине этапов - это не работает:
InputProcessor backProcessor = new InputAdapter() {
@Override
public boolean keyDown(int keycode) {
if ((keycode == Input.Keys.BACK))
{
Gdx.app.log("INPUT", "BACK");
}
return false;
}
};
InputMultiplexer multiplexer = new InputMultiplexer(backProcessor,
loginStage,registerStage);
Gdx.input.setInputProcessor(multiplexer);
Кроме того, я попытался в методе render
с:
if(Gdx.input.isKeyDown(Keys.BACK)
Не работает.
Выше решения отлично работают ЗА ИСКЛЮЧЕНИЕМ момент, когда клавиатура видна.
Что я пытаюсь достичь? Мне нужно поймать кнопку «Назад», когда отображается экран onScreenKeyboard.
Редактировать
Я также попытался с TextFieldListener
но «BackButton» является один ключ, который не имеет никакого «обугленного кода», поэтому он не может быть пойманной там:
public void keyTyped(TextField textField, char c)
FINAL EDIT
Как заявили авторы LibGDX - нет никакого способа получить это обычным способом, потому что кнопка «Назад» выполняется за пределами приложения, когда она нажата, когда клавиатура видна. Android-решение должно переопределить EditText
onPreKeyIme()
, но LibGDX TextField
не имеет ничего общего с Android, и нет никакого соединения.
Если есть кто-нибудь, кто мог бы указать любое решение этой проблемы, я был бы признателен.