3162


Unity(4.6.1)を利用して、PC/Macアプリをつくっています。

アプリ内で、ユーザーに対して名前入力を促すために、UI.InputFieldを利用しているのですが、日本語が入力できない状況です。

InputFieldのOnValueChangeで、入力を検知して対応しようとも試みましたが、関数が実行されないため対策が取れていません。

基本的な設定ミス、もしくは対策などありましたら、アドバイスを頂きたいです。 よろしくお願いします。

◯補足情報  
・InputFieldの設定は、以下の設定をしています  
"Content Type" = "Custom"  
"Character Validation"="None"

・実行中に、日本語を入力しようとすると、文字変換前はInputField内に文字が表示されますが、確定するタイミングで、文字列が無効になっているような挙動をします。

・Inspector上で、初期値として、"テスト"などを設定しても、Editor実行後は空文字列になってしまいます。

=======================================================  
※追加 2015/01/06 13:30 InputFieldの"Line Type"を、"Multi Line NewLine"に設定したところ、
日本語が入力できることを確認しました。"OnValueChange"も実行されます。

"OnValueChange"で、改行を無視するようにすれば対応できそうな見込みが立ってきていますが、 よりよい方法を教えていただけると助かります。


CC BY-SA 3.0
2015-01-05T09:09:19.643
3118
2015-01-08T02:01:17.573
2015-01-06T10:39:25.537
3766
3766
question
unity3d
uGUIのInputFieldで、日本語を入力できるようにするにはどうすればいいでしょうか？(MacOS環境)


Mac OS X 10.9.5 / Unity 4.6.1f1 の環境では

Asset Store の UI Samples

<https://www.assetstore.unity3d.com/jp/#!/content/25468>

の UI.InputFieldに、ことえり での日本語入力は問題ありませんでした。

* * *

追記

Mac OS X 10.10 で IME が改訂されたことと関係した現象とも考えられます。

Unity 4.6.0 での不具合として登録されている

628352 JAPANESE CHARACTERS ARE NOT DISPLAYED WHEN THE NEW INPUTFIELD ON MAC

は解決されており、以下との重複だとすると

646989 A NEWLINE CHARACTER GETS ADDED TO THE INPUT FIELD AFTER/IF IT WAS
RESELECTED AND REACTIVATED FROM WITHIN AN ONENDEDIT CALLBACK

Patch 4.6.1p2 にて修正されている可能性があります。

<http://unity3d.com/unity/qa/patch-releases>

注意：以下のような報告あり。

「Unity4.6.1p2が公開されておりますが こちらでUnityWebPlayerのビルドを行った場合、
公開されている最新のPlayerでは要求バージョンを満たしておらず再生する事ができません。」


CC BY-SA 3.0
2015-01-06T03:30:36.200
3162
2015-01-08T02:01:17.573
2015-01-08T02:01:17.573
2108
2108
3118
answer