MRが楽しい

MRやVRについて学習したことを書き残す

入力フィールドでHoloLens2のシステムキーボードのデフォルト入力を英数字入力にする

本日は HoloLens2 の小ネタ枠です。
テキスト入力フィールドでHoloLens2のシステムキーボードのデフォルト入力を英数字入力にする方法です。

HoloLens2 のシステムキーボードのデフォルト入力

以下のように TextMeshPro-InputField コンポーネントを配置した HoloLens2 向けのサンプルシーンを作成しました。
InputField コンポーネントはデフォルトだと入力タイプを示す[ContentType]が[Standard]に設定されています。

この設定で HoloLens2 にアプリをデプロイしてテキスト入力を試してみます。
すると以下の通り、日本語入力でシステムキーボードが立ち上がります。

デフォルト入力を英数字にする

HoloLens2 のシステムキーボードが立ち上がった時にデフォルト入力を英数字入力にするには[ContentType]または[KeyboardType]を変更します。
一例として[ContentType]を[EmailAddress]に設定すると、デフォルト入力が英数字入力になります。

ただし上記の設定の場合、入力可能な文字の種類も[EmailAddress]の規約に制限されてしまいます。
入力可能な文字には制限をかけず、デフォルト入力のみ切り替えたい場合は[ContentType]を[Custom]に変更して以下のように設定します。

KeybordType(キーボードタイプ):EmailAddress
CharacterValidation(入力制限):None

こちらの設定であればデフォルト入力が英数字入力となり、かつ入力を切り替えて日本語を入力することも可能です。

Tips

ちなみに[ContentType]を入力値を英数字に限定する[Alphanumeric]に変更した場合はデフォルト入力は日本語入力になるようです。
英数字入力に切り替えて入力するという手間が発生するため、HoloLens2 向けの開発時には注意が必要です。