Unreal Engine (UE) の Android ベースのすべてのプロジェクトは、標準ポップアップ ダイアログ入力ボックスまたはオペレーション システム仮想キーボードのいずれかの使用をサポートしています。このドキュメントでは、UE プロジェクトで仮想キーボードをセットアップし呼び出す方法を説明します。


手順
プロジェクトで仮想キーボードを有効にするには、次を実行する必要があります。
-
メインメニュー で [Edit (編集)] から [Project Settings (プロジェクト設定)] をクリックします。
-
[Project Settings (プロジェクト設定)] メニューで [Platforms] > [Android] を選び [APK Packaging] セクションの中の [Enable improved virtual keyboard \Experimental\ (改善された仮想キーボードを有効にする)(実験的)] オプションの横にあるチェックマーク ボックスをクリックして有効にします。
クリックしてフルサイズで表示。
-
コンテンツ ブラウザ を右クリックして [User Interface] を選び、[Widget Blueprint] オプションをクリックして新しいブループリントに 「Input Text」 という名前を付けます。
クリックしてフルサイズで表示。
-
Input Text UMG ウィジェットをダブルクリックして開き、[Palette] から TextBox を UMG グラフへドラッグします。
クリックしてフルサイズで表示。
-
Canvas パネルの中央にくるように TextBox を配置して [Compile] ボタンと [Save] ボタンを押します。
クリックしてフルサイズで表示。
入力エレメントを可視にし、仮想キーボードの背後で見えづらくならないように調整するのは各自のアプリケーション側です。提供されている OnVirtualKeyboardShown および OnVirtualKeyboardHidden イベント ハンドラを使って UI エレメントが仮想キーボードで隠れてしまわないようにしっかり調整してください。
-
Level ブループリント を開き、以下のノードを イベントグラフ に追加します。
- Event Begin Play
- Create Widget
- Add to Viewport
クリックしてフルサイズで表示。
-
Event Begin Play を Create Widget に接続し Create Widget を Add Viewport ノードに接続します。Level ブループリント は下の画像のような状態になります。
クリックしてフルサイズで表示。
-
次に Create Widget Blueprint ノードの Class 入力に先ほど作成した InputText ウィジェット ブリントを追加します。
クリックしてフルサイズで表示。
-
レベルに 「AndroidVirtualKeyboard」 と名前を付けて保存し、[Project Settings] を開いて [Maps & Modes] に移動します。[Default Maps] で、[Editor Startup Map] と [Game Default Map] に AndroidVirtualKeyboard マップを入力します。
クリックしてフルサイズで表示。
-
[Platforms] ボタンをクリックして、表示されたリストの中から UE プロジェクトをデプロイする Android デバイスを選びます。
クリックしてフルサイズで表示。
最終結果
プロジェクトを Android デバイスで起動後、テキスト入力ボックスを押せば以下の動画のように Android システム キーボードを使ってテキストを自由に入力できるようになります。
Android.NewKeyboard コンソール変数の後に次のいずれかの数字を入力すると仮想キーボードを無効にすることができます。こうすることにより、ユーザーが異なる IME (Input Method Editor) を必要とする言語を使う場合に便利です。
コマンド名 | 入力 | 説明 |
---|---|---|
Android.NewKeyboard | 0 | UE エディタで設定したチェックマーク ボックス 設定を使います。 |
Android.NewKeyboard | 1 | 新しいキーボードを強制使用します。 |
Android.NewKeyboard | 2 | 新しいキーボードを強制使用します。 |