Мои Уведомления
Привет, !
Мой Аккаунт Мои Финансы Мои Подписки Мои Настройки Выход
Руководство API скрипты

Мобильная клавиатура

В большинстве случаев Unity автоматически обрабатывает ввод с клавиатуры для элементов графического интерфейса, но также можно легко отобразить клавиатуру по запросу из сценария.

Элементы графического интерфейса пользователя

Клавиатура появляется автоматически, когда пользователь нажимает на редактируемые элементы графического интерфейса. В настоящее время GUI.TextField, GUI.TextArea и GUI.PasswordField отобразит клавиатуру; дополнительные сведения см. в документации по классу GUI.

Ручное управление клавиатурой

Используйте функцию TouchScreenKeyboard.Open(), чтобы открыть клавиатуру. Информацию о параметрах, которые принимает эта функция, см. в справочнике по сценариям TouchScreenKeyboard.

Параметры раскладки клавиатуры

Клавиатура поддерживает следующие параметры:-

Свойства: Функции:
TouchScreenKeyboardType.Default Письма. Можно переключить на клавиатуру с цифрами и знаками препинания.
TouchScreenKeyboardType.ASCIICapable Письма. Можно переключить на клавиатуру с цифрами и пунктуацией.
TouchScreenKeyboardType.NumbersAndPunctuation Цифры и знаки препинания. Можно переключить на клавиатуру с буквами.
TouchScreenKeyboardType.URL Буквы с косой чертой и кнопками .com. Можно переключить на клавиатуру с цифрами и пунктуацией.
TouchScreenKeyboardType.NumberPad Только цифры от 0 до 9.
TouchScreenKeyboardType.PhonePad Клавиатура для ввода телефонных номеров.
TouchScreenKeyboardType.NamePhonePad Письма. Можно переключить на клавиатуру телефона.
TouchScreenKeyboardType.EmailAddress Буквы со знаком @. Можно переключить на клавиатуру с цифрами и знаками препинания.

Предварительный просмотр текста

По умолчанию поле редактирования будет создано и помещено поверх клавиатуры после ее появления. Это работает как предварительный просмотр текста, который набирает пользователь, поэтому текст всегда виден пользователю. Однако вы можете отключить предварительный просмотр текста, установив для параметра TouchScreenKeyboard.hideInput значение true. Обратите внимание, что это работает только для определенных типов клавиатуры и режимов ввода. Например, он не будет работать для клавиатуры телефона и многострочного ввода текста. В таких случаях всегда будет отображаться поле редактирования. TouchScreenKeyboard.hideInput — это глобальная переменная, которая влияет на все клавиатуры.

Видимость и размер клавиатуры

В TouchScreenKeyboard есть три свойства клавиатуры, которые определяют статус и размер видимости клавиатуры на экране.

Свойства: Функции:
visible Возвращает true, если клавиатура полностью видна на экране и может использоваться для ввода символов.
area Возвращает положение и размеры клавиатуры.
active Возвращает true, если клавиатура активирована. Это свойство не является статическим свойством. Для использования этого свойства у вас должен быть экземпляр клавиатуры.

Обратите внимание, что TouchScreenKeyboard.area будет возвращать Rect с позицией и размером, установленными на 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 возвращает реальное положение и размер клавиатуры.

Защищенный ввод текста

Возможно настроить клавиатуру таким образом, чтобы при вводе символы скрывались. Это полезно, когда от пользователей требуется ввести конфиденциальную информацию (например, пароли). Чтобы вручную открыть клавиатуру с включенным безопасным вводом текста, используйте следующий код:

TouchScreenKeyboard.Open("", TouchScreenKeyboardType.Default, false, false, true);
Скрытие текста при наборе
Скрытие текста при наборе

Оповещать клавиатуру

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

TouchScreenKeyboard.Open("", TouchScreenKeyboardType.Default, false, false, true, true);
Предупреждающая клавиатура
Предупреждающая клавиатура
Вы можете отблагодарить автора, за перевод документации на русский язык. ₽ Спасибо
Руководство Unity 2021.3