Мобильная клавиатура
Мобильная клавиатура
В большинстве случаев, для GUI элементов Unity будет обрабатывать ввод с клавиатуры автоматически, но из скрипта отобразить клавиатуру тоже легко.
GUI Элементы
Когда пользователь тапает на редактируемые элементы интерфейса, клавиатура появляется автоматически. В настоящее время GUI.TextField, GUI.TextArea и GUI.PasswordField отображают клавиатуру.
Руководство по обращению к клавиатуре
Используйте TouchScreenKeyboard.Open() .Чтобы открыть клавиатуру, воспользуйтесь функцией Open(). Пожалуйста, ознакомьтесь со справочником по сценариям TouchScreenKeyboard для получения информации о параметрах, которые принимает эта функция.
Настройки раскладки клавиатуры
Клавиатура поддерживает следующие настройки:-
Свойство: | Функция: |
---|---|
TouchScreenKeyboardType.Default | Сообщения. Могут быть включены в клавиатуре с числами и знаками препинания. |
TouchScreenKeyboardType.ASCIICapable | Сообщения. Могут быть включены в клавиатуре с числами и знаками препинания. |
TouchScreenKeyboardType.NumbersAndPunctuation | Числа и знаки препинания. Могут быть включены в клавиатуре с сообщениями. |
TouchScreenKeyboardType.URL | Сообщения с слешем и .com кнопками. Могут быть включены в клавиатуре с числами и знаками препинания. |
TouchScreenKeyboardType.NumberPad | Только числа от 0 до 9. |
TouchScreenKeyboardType.PhonePad | Клавиатура используется для ввода цифр номера телефона. |
TouchScreenKeyboardType.NamePhonePad | Сообщения. Могут быть включены в клавиатуре телефона. |
TouchScreenKeyboardType.EmailAddress | Сообщения со знаком @. Могут быть включены в клавиатуре с числами и знаками препинания. |
Предварительный просмотр текста
По умолчанию окно редактирования будет создано и размещено поверх клавиатуры после его появления. Это работает как предварительный просмотр текста, который набирает пользователь, поэтому текст всегда виден пользователю. Однако вы можете отключить предварительный просмотр текста, установив TouchScreenKeyboard.Скройте значение true для ввода. Обратите внимание, что это работает только для определенных типов клавиатур и режимов ввода. Например, это не сработает для клавиатур телефонов и многострочного ввода текста. В таких случаях всегда будет отображаться окно редактирования. TouchScreenKeyboard.hideInput является глобальной переменной и будет влиять на все клавиатуры.
Видимость и размер клавиатуры
В TouchScreenKeyboard есть три свойства клавиатуры, определяющие статус видимости и размер на экране.
Свойство: | Функция: |
---|---|
visible | Возвращает значение true, если клавиатура полностью видна на экране и может использоваться для ввода символов. |
area | Возвращает позицию и размеры клавиатуры. |
active | Возвращает значение true, если клавиатура активирована. Это свойство не является статическим. Для использования этого свойства у вас должен быть экземпляр клавиатуры. |
Обратите внимание, что TouchScreenKeyboard.area будет возвращать прямоугольник с положением и размером, равными 0, до тех пор, пока клавиатура не будет полностью видна на экране. Не следует запрашивать это значение сразу после TouchScreenKeyboard.Open(). Последовательность действий с клавиатуры следующая:
- TouchScreenKeyboard.Вызывается функция Open(). Функция TouchScreenKeyboard.active возвращает значение true. Функция TouchScreenKeyboard.visible возвращает значение false. Функция TouchScreenKeyboard.area возвращает значение (0, 0, 0, 0).
- Клавиатура выдвигается на экран. Все свойства остаются такими же.
- Клавиатура перестает скользить. TouchScreenKeyboard.active возвращает значение true. TouchScreenKeyboard.visible возвращает значение true. TouchScreenKeyboard.area возвращает реальное положение и размер клавиатуры.
Безопасный ввод текста
Можно настроить клавиатуру так, чтобы скрыть символы при наборе. Это нужно, когда пользователю требуется ввести секретную информацию (например, пароль). Чтобы вручную открыть клавиатуру с скрытыми символами, используйте следующий код:

Скрытый набираемый текст
Alert клавиатура
Чтобы отобразить клавиатуру на черном полупрозрачном фоне вместо классического непрозрачного, вызовите команду TouchScreenKeyboard.Open() следующим образом:

Классическая клавиатура

Alert клавиатура
Теги:
0 Комментариев