Уже есть виджет Tripleplay для приема текста, который называется Поле .
Однако он очень примитивен и еще не работает на мобильных платформах (он будет работать на устройстве Android с аппаратной клавиатурой). Нам нужно предоставить API в PlayN для отображения виртуальной клавиатуры, но до тех пор у него нет возможности запустить отображение виртуальной клавиатуры.
Однако я не рекомендую использовать это для какого-либо существенного ввода текста. Он не поддерживает (и никогда не будет) вырезать и вставлять, или методы ввода языка, или любые другие чрезвычайно сложные функции, которые пользователи ожидают от ввода текста.
Я бы хотел добавить API в PlayN, например:
Keyboard.requestTextInput(String label, Callback<String> callback)
, которая выдает виртуальную клавиатуру с прикрепленным (собственным) текстовым полем и позволяет пользователю вводить одну строку текста, используя все механизмы поддержки собственного ввода текста платформы. Это позволит им вырезать и вставлять, использовать методы ввода языка и обеспечивать удобство работы с данной платформой.
Если вашей игре требуется более сложный ввод текста (например, интерфейс чата или возможность создавать страницы заметок), вам, вероятно, придется создать отдельный интерфейс для каждой платформы, которую вы хотите поддерживать, с помощью встроенного многострочного редактирования текста. виджеты, а затем "подключить" их в вашу игру PlayN. Это будет сложнее, чем можно описать в простом ответе SO, поэтому вам придется провести некоторое исследование и узнать, как PlayN управляет отображением на каждом из серверных компонентов, которые вы хотите поддерживать.