Billentyűzetbemenet a Unityben
Névtér:UnityEngine
Típus: TouchScreenKeyboard
Bár a HoloLens számos beviteli formát támogat, beleértve a Bluetooth-billentyűzeteket is, a legtöbb alkalmazás nem feltételezheti, hogy minden felhasználó rendelkezik fizikai billentyűzettel. Ha az alkalmazás szöveges bevitelt igényel, valamilyen képernyő-billentyűzetet kell megadni.
A Unity biztosítja a TouchScreenKeyboard osztályt a billentyűzet bemenetének elfogadásához, ha nincs elérhető fizikai billentyűzet.
A HoloLens rendszerbillentyűzeti viselkedése a Unityben
A HoloLensen a TouchScreenKeyboard a rendszer képernyő-billentyűzetét használja, és közvetlenül ráfedi az MR-alkalmazás mennyiségi nézetére. Ez a funkció hasonló a HoloLens beépített alkalmazásaiban használt billentyűzethez. Vegye figyelembe, hogy a rendszerbillentyűzet a célplatform képességeinek megfelelően fog viselkedni, például a HoloLens 2 billentyűzete támogatja a közvetlen kézműveleteket, míg a HoloLens (1. generációs) billentyűzete támogatja a GGV-t (Tekintet, Kézmozdulat és Hang). Emellett a rendszerbillentyűzet nem jelenik meg, amikor Unity-remotingot végez a szerkesztőből a HoloLensbe.
A rendszerbillentyűzet használata a Unity-alkalmazásban
A billentyűzet deklarálása
A osztályban deklaráljon egy változót a TouchScreenKeyboard tárolásához, és egy változót, amely a billentyűzet által visszaadott sztringet tárolja.
UnityEngine.TouchScreenKeyboard keyboard;
public static string keyboardText = "";
A billentyűzet meghívása
Ha egy esemény billentyűzetbemenetet kér, az alábbiak segítségével jelenítheti meg a billentyűzetet.
keyboard = TouchScreenKeyboard.Open("text to edit");
A függvénynek TouchScreenKeyboard.Open
átadott további paraméterekkel szabályozhatja a billentyűzet működését (például helyőrző szöveg beállítása vagy automatikus javítás támogatása). A paraméterek teljes listájáért tekintse meg a Unity dokumentációját.
Beírt tartalom beolvasása
A tartalom egyszerűen lekérhető a meghívásával keyboard.text
. Előfordulhat, hogy a tartalmat keretenként vagy csak a billentyűzet bezárásakor szeretné lekérni.
keyboardText = keyboard.text;
Alternatív billentyűzetbeállítások
A TouchScreenKeyboard osztály közvetlen használata mellett felhasználói bevitelt is kérhet a Unity felhasználói felületi beviteli mezőjével vagy TextMeshPro beviteli mezőjével. Emellett az MRTKHandInteractionExamples jelenetében található egy TouchScreenKeyboard-alapú implementáció is (a bal oldalon billentyűzet-interakciós minta található).
Következő fejlesztési ellenőrzőpont
Ha követi az általunk ismertetett Unity-fejlesztési folyamatot, akkor a Mixed Reality platform képességeinek és API-jainak felfedezésében van része. Innen folytathatja bármelyik témakört , vagy közvetlenül az alkalmazás eszközre vagy emulátorra való üzembe helyezésére ugorhat.