Version: 2021.1
Mobile device input
Unity XR Input

Teclado móvil

En la mayoría de los casos, Unity manejará input de teclado automáticamente para elementos GUI pero también es fácil mostrar el teclado en demanda desde un script.

Elementos GUI

El teclado aparecerá automáticamente cuando un usuario golpee en elementos GUI editables. Actualmente, GUI.TextField, GUI.TextArea y GUI.PasswordField va a mostrar el teclado; vea la documentación GUI class para más detalles.

Manejo del teclado manual

Use la función TouchScreenKeyboard.Open() para abrir el teclado. Por favor ver la referencia del scripting TouchScreenKeyboard para los parámetros que está función toma.

Opciones de distribución del teclado

El teclado soporta las siguientes opciones:-

Propiedad: Función:
TouchScreenKeyboardType.Default Letras. Pueden ser cambiadas al teclado con números y puntuación.
TouchScreenKeyboardType.ASCIICapable Letras. Pueden ser cambiadas al teclado con números y puntuación.
TouchScreenKeyboardType.NumbersAndPunctuation Números y puntuación. Pueden ser cambiadas al teclado con letras.
TouchScreenKeyboardType.URL Letras con barras y botones .com .Pueden ser cambiadas a teclado con números y puntuación.
TouchScreenKeyboardType.NumberPad Solo números de 0 a 9.
TouchScreenKeyboardType.PhonePad Teclado usado para introducir números de teléfono.
TouchScreenKeyboardType.NamePhonePad Letras. Pueden ser cambiadas al teclado de teléfono.
TouchScreenKeyboardType.EmailAddress Letras con signo @. Pueden ser cambiadas a teclado con números y puntuación.

Vista Preliminar de Texto

Por defecto, una caja de edición va a ser creada y colocada encima del teclado después de que aparezca. Esto funciona como una vista preliminar del texto que el usuario esté escribiendo, entonces el texto es siempre visible para el usuario. No obstante, puede deshabilitar la vista preliminar del texto seleccionando TouchScreenKeyboard.hideInput a true. Tenga en cuenta que esto funciona solo para ciertos tipos de teclado y modos de input. Por ejemplo, esto no va a servir para los teclados de teléfono e input de texto de varias lineas. En esos casos, la caja de edición siempre va aparecer. TouchScreenKeyboard.hideInput es una variable global y va afectar todos los teclados.

Visibilidad y tamaño del teclado

Hay tres propiedades de teclado en TouchScreenKeyboard que determina estatus de la visibilidad del teclado y el tamaño en la pantalla.

Propiedad: Función:
visible Devuelve true si el teclado es completamente visible en la pantalla y puede ser usada para introducir caracteres.
area Devuelve la posición y dimensiones del teclado.
active Devuelve true si el teclado está activado. Esta propiedad no es una propiedad estática. Usted debe tener una instancia de teclado para usar esta propiedad.

Tenga en cuenta que TouchScreenKeyboard.area va a devolver un Rect con una posición y tamaño establecido en 0 hasta que el teclado sea completamente visible en la pantalla. Usted no debe consultar este valor inmediatamente después de TouchScreenKeyboard.Open(). La secuencia de eventos de teclado es la siguiente:

  • TouchScreenKeyboard.Open() es llamada. TouchScreenKeyboard.active devuelve true. TouchScreenKeyboard.visible devuelve false. TouchScreenKeyboard.area devuelve (0, 0, 0, 0).
  • El teclado se desliza afuera de la pantalla. Todas las propiedades se mantienen igual.
  • El teclado para de deslizarse. TouchScreenKeyboard.active devuelve true. TouchScreenKeyboard.visible devuelve true. TouchScreenKeyboard.area devuelve la verdadera posición y tamaño del teclado.

Input Seguro de Texto

Es posible configurar el teclado para esconder símbolos cuando se esté escribiendo. Esto es útil cuando los usuarios son requeridos en anotar información sensible (tal como contraseñas). Para abrir manualmente el teclado con input seguro de texto activado, use el siguiente código:

TouchScreenKeyboard.Open("", TouchScreenKeyboardType.Default, false, false, true);


Ocultar el texto mientras se escribe
Ocultar el texto mientras se escribe

Teclado de Alerta

Para mostrar el teclado con un fondo semi-transparente en vez del opaco clásico, llamar TouchScreenKeyboard.Open() como sigue :

TouchScreenKeyboard.Open("", TouchScreenKeyboardType.Default, false, false, true, true);


Teclado de Alerta
Teclado de Alerta
Mobile device input
Unity XR Input