下腹オプティマイザ

主にIT関係の雑記帳です。全然関係ないことも書くかもしれないです。

Unity uGUIのInputFieldがAndroidで上手く動かないから代わりのcomponentを作った

uGUIのInputFieldが自分のAndroid端末(Xperia  Z3)だと上手く動かなかった。

うまく動かないというのも、キーボードが出てきて入力してもtextに入らなくて上手く入力されたテキストが扱えなかった。時々入ったりして不安定。エディタのplayerなら普通に動くので多分不具合なんじゃねーかなと思いつつも待ってるのもアレなので代わりのcomponentを作った。

 

github.com

 

使い方

InputFieldオブジェクトをエディタから追加してInputFieldコンポーネントを外して代わりにButtonとInputFieldRetainオブジェクトを付ける。

ButtonのOnClickリスナにInputFieldRetain.openKeyboardを追加しないとモバイルキーボードが開かないので注意。

InputField同様TextとPlaceholderを指定する必要があります。

Nameに文字列を入れるとそれをキーにしてPlayerPrefsに保存します。

空白だと保存しません。

 

 

f:id:kurogomapurin11:20150508105641p:plain

 

一応動作確認*したSampleSceneも付けました。

Unityエディタ上で確認する場合はTextに直接入力するなど一工夫必要です。

 

*Android XperiaZ3のみ

 

根本的に標準のInputFieldがバグってるんじゃないかとも思うのでもっと単純な解決方法あったら教えて下さい。