【Unity, InputField】入力したテキストを取得して文字を消す方法

投稿者: | 2018年11月5日
フィア
カレン~、InputField使って文字を入力してみたんだけど、

入力した文字の取得ができないの…

カレン
あぁ、InputFieldね…結構ややこしいわよね
カレン
まぁ、手順さえ分かれば難しくないから、

ちゃちゃっと習得しちゃいましょ

フィア
がんばろー!

 

スポンサーリンク

 

 

InputFieldのセット

GameObject > UI > Input Field よりInputFieldをHierarchyにセットしてください。

 

自動的にCanvas とEventSystemがセットされ、Canvas内にInputFieldがあると思います。

 

 

 

 

これでゲームを実行すると、文字入力ができます。

 

 

では、Buttonを押したら文字列を取得できるようにします。

まず、Canvasの下にButtonを作成します。その後、Asset/Script 内にInputExample.csを作成し、以下のコードを入力してください。

 

このスクリプトをHierarchyのInputFieldに取り付けて、以下のようにButtonに紐づけします。

 

 

これでゲームを実行すると、以下のようになります。

 

フィア
これで入力した文字を取得できたね!
カレン
ちなみに、Buttonを押したら入力した文字が消えるようにできるかな?
フィア
ふふーん、カレン、私の事見くびってるね?
フィア
inputText.text = “”;  を加えればいけるはずっ!

 

 

フィア
あれ!? どうして消えないの…?
カレン
考え方は間違いじゃないんだけど、

Unityの仕様上、それではダメみたいなの

カレン
下のコードに書き換えて使ってみてね

 

 

フィア
あっ、ちゃんと消えたね
カレン
InputFieldコンポーネントのTextを

変更するってところがややこしいわよね

フィア
うぅ…今回は正解できると思ったのに…
カレン
落ち込まなくてもフィアはちゃんと成長してるわよ
カレン
よしよし…
フィア
ふにゃ~…

 

 

【Unity の教科書 2018】サンプルゲームあり|2D&3Dスマートフォンゲームが作れるおすすめの入門書

 

すくまりゲームズの人気記事