Как я могу создать текстовое поле на iOS / Android и обработать ввод в MonoGame? - PullRequest
0 голосов
/ 25 мая 2019

Я хочу, чтобы люди могли создать новую учетную запись в моем приложении MonoGame для iOS и Android. Мне нужно текстовое поле для имени пользователя, пароля и адреса электронной почты для восстановления (если кто-то забыл свой пароль).

  • Как создать текстовое поле? Должен ли я сделать белый прямоугольный спрайт (Texture2D) и spriteFont для написания текста (например, имя пользователя)? Или есть лучшие способы создать текстовое поле?

  • Как я могу узнать, кто-то постучал пальцем по пустому текстовому полю? Могу ли я использовать Rectangle.Intersects(TappRectangle) или лучше сделать это по-другому?

  • Как я могу показать клавиатуру на iOS / Android после того, как кто-то нажал на текстовое поле, чтобы они могли написать свое имя пользователя в текстовом поле?

  • Как получить символы, которые они нажимали на клавиатуре?

  • Можно ли сохранить / запомнить текст (данные для входа), чтобы людям не нужно было писать его всегда, когда они запускают мое приложение? Я хочу, чтобы текстовые поля уже заполнялись их учетными данными при запуске приложения, тогда им просто нужно нажать на кнопку входа для входа в систему.

1 Ответ

0 голосов
/ 28 мая 2019

Вы можете использовать метод KeyboardInput.Show(string WindowTitle, string Prompt, string Default, bool HidePassword = false).

// Load saved data into the following variables:
var defaultUsername = "";
var defaultPassword = "";
var defaultEmail = "";

var username = await KeyboardInput.Show("Name", "What's your username?", defaultUsername);
var password = await KeyboardInput.Show("Password", "What's your Password?", defaultPassword, true);
var email = await KeyboardInput.Show("E-Mail", "What's your Email?", defaultEmail);

// validate and save if the values do not match the defaults above

Это покажет три отдельных поля ввода, но оно обрабатывает подсказки и отображение и ввод всплывающей клавиатуры.

Что касается сохранения данных: посмотрите на класс TitleContainer . Вы можете использовать стандартный файловый ввод / вывод для чтения и записи данных.

...