Entrada de teclado na Unidade

Espaço de nome:UnityEngine
Tipo: TouchScreenKeyboard

Apesar de HoloLens suporta muitas formas de entrada, incluindo teclados Bluetooth, a maioria das aplicações não pode assumir que todos os utilizadores terão um teclado físico disponível. Se a sua aplicação necessitar de entrada de texto, deve ser fornecida alguma forma de teclado no ecrã.

A Unidade fornece a classe TouchScreenKeyboard para aceitar a entrada do teclado quando não há teclado físico disponível.

HoloLens comportamento do teclado do sistema na Unidade

No HoloLens, o TouchScreenKeyboard aproveita o teclado do sistema no ecrã e sobrepõe-se diretamente à vista volumosa da sua aplicação MR. A experiência é semelhante à utilização de teclado nas aplicações integradas de HoloLens. Note que o teclado do sistema se comportará de acordo com as capacidades da plataforma-alvo, por exemplo, o teclado no HoloLens 2 suportaria interações diretas das mãos, enquanto o teclado no HoloLens (1º género) suportaria GGV (Gaze, Gesture e Voice). Além disso, o teclado do sistema não aparecerá ao executar o Remoting de Unidade do editor para um HoloLens.

Usando o teclado do sistema na sua app Unidade

Declare o teclado

Na classe, declare uma variável para armazenar o TouchScreenKeyboard e uma variável para segurar a cadeia que o teclado devolve.

UnityEngine.TouchScreenKeyboard keyboard;
public static string keyboardText = "";

Invocar o teclado

Quando ocorrer um evento solicitando a entrada do teclado, utilize o seguinte para mostrar o teclado.

keyboard = TouchScreenKeyboard.Open("text to edit");

Pode utilizar parâmetros adicionais transmitidos para a TouchScreenKeyboard.Open função para controlar o comportamento do teclado (por exemplo, definir texto reservado ou apoiar a correção automática). Para obter a lista completa dos parâmetros, consulte a documentação da Unidade.

Recuperar conteúdo dactilografado

O conteúdo pode simplesmente ser recuperado keyboard.text ligando. É melhor recuperar o conteúdo por armação ou apenas quando o teclado estiver fechado.

keyboardText = keyboard.text;

Opções alternativas de teclado

Além de utilizar diretamente a classe TouchScreenKeyboard, também pode obter a entrada do utilizador utilizando o campo de entrada UI da Unidade ou o campo de entrada TextMeshPro. Além disso, existe uma implementação baseada no TouchScreenKeyboard na cena HandInteractionExamples do MRTK (existe uma amostra de interação com teclado no lado esquerdo).

Próximo checkpoint de desenvolvimento

Se está a seguir a jornada de desenvolvimento da Unidade que traçamos, está no meio de explorar as capacidades da plataforma de Realidade Mista e APIs. A partir daqui, pode continuar a qualquer tópico ou saltar diretamente para implementar a sua aplicação num dispositivo ou emulador.