Takunojiのプログラミング・プレイグラウンド(遊び場)

Javaプログラミングを基本にして、ゲーム作成に必要なことの調査結果、やったら面白そうなことなどを記載します。プログラミングのススメ的なことも記載します。プログラミングで楽しく遊ぶために色々と記載して行きます。

Unity Error トラブル〜全角の文字決定時にEnter Keyアクションが動く〜

[2018/04/15]
iPhoneでのアプリケーションを作成する時には、入力部分はXcode(swift)での実装が必要らしい。。。

以下のソースで実行した時に文字決定のエンターキーで処理が走ってしまい
文字決定の時と、コマンド入力時のエンターキーのアクションを判別したい。

    void Update() {
        if(inputField.isFocused) {
            inputField.MoveTextEnd(false);
        }
        if(Input.GetKeyDown(KeyCode.Return)) {
            string command = getInputCommand(inputField.text);
            if (command == String.Empty) {
                Debug.Log ("Break now:");
            } else {
                exeCommand (command);
                inputField.text = inputField.text + commandStart;
                inputField.MoveTextEnd(false);
            }
        }
    }
文字決定時には文字がすでに入力されているのか入力されていないのか不安定で
両方の場合がある。。。タチの悪いバグだ(笑)

こいつをやっつけるのには、文字決定時とコマンド入力時の判別を行わないとけないが
さて。。。
調べてみると「inputField.text」では、全角に対応できなくて
「inputTextField.textComponent.text」は対応している。。。らしい
でも、全角入力後に「改行が消える」という謎なバグがあぁぁぁぁ。。。