es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Unity3D UWP Hololens: portal web de entrada usando InputField sin teclado táctil emergente TouchScreenKeyboard

Necesito enviar una entrada remota desde el portal web al HL2 en modo quiosco, para controlar la ejecución de mi aplicación mientras los participantes de prueba la usan. Para lograr esto, necesito agregar un InputField a la escena. Esto funciona bien en el modo Quiosco, pero viene con un TouchScreenKeyboard que aparece en el campo de visión del usuario. El usuario no necesita ingresar nada, por lo que el teclado no es necesario para ellos y en realidad es inaceptable para mis necesidades ya que arruina su interacción con mi aplicación. Sé que puedo establecer TouchScreenKeyboard.Active (falso) para ocultarlo, pero luego HL2 no recibe la entrada en modo Quiosco. Anteriormente, estaba tomando la entrada de TouchScreenKeyboard.text en lugar de InputField.text, lo que no funciona en modo Quiosco. El TouchScreenKeyboard no aparece en la escena utilizando holográficos remotos en Unity, por lo que no puedo determinar cómo posicionarlo o interactuar con él, porque no es un GameObject y no tiene Transform. Solo rastrea el movimiento de la cabeza del usuario.

¿Cómo puedo ocultar o mover el TouchScreenKeyboard de tal manera que todavía funcione en modo quiosco?

Necesito el modo Quiosco para evitar que el usuario lance involuntariamente el menú de inicio u otras aplicaciones.

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Para ocultar o mover el teclado táctil en un modo de quiosco de manera que aún funcione, se podría intentar establecer la posición del teclado en algún lugar fuera de la pantalla principal utilizando la API de scripting para acceder al componente Transform del teclado. Dado que el teclado no es un objeto del juego, no se puede interactuar con él como se haría con otros objetos en Unity. Sin embargo, se puede recuperar el componente Transform del teclado utilizando una combinación del método C# GetComponent() y el Identificador Único (UUID) del objeto del teclado.

    Una vez que haya recuperado el componente Transform del objeto del teclado, puede establecer su posición en algún lugar fuera de la pantalla principal, como en una coordenada negativa de XYZ. Esto debería evitar que el teclado aparezca en el campo de visión del usuario y aún permitir que el InputField reciba entrada. Alternativamente, podría intentar establecer la escala del teclado en cero para que se vuelva invisible.

    También puede resultar útil desactivar completamente el teclado táctil estableciendo su propiedad Active() en falso durante la ejecución de su aplicación. Esto se puede hacer a través del código haciendo referencia al objeto del teclado y llamando al método Active() del teclado táctil para establecerlo en falso.

    En general, ocultar o mover el teclado táctil no debería impedir que HL2 reciba entrada en modo quiosco. Con los ajustes adecuados, debería poder lograr el resultado deseado de evitar que el usuario lance el menú principal u otras aplicaciones y al mismo tiempo permitir que interactúe con su aplicación a través del InputField.

Comments are closed.