「Unity/UIInputField」の版間の差分
提供: 初心者エンジニアの簡易メモ
(→入力変更・確定があった時のイベント(別メソッドで実行)) |
|||
行47: | 行47: | ||
Debug.Log(value);// 変更後の文字列 | Debug.Log(value);// 変更後の文字列 | ||
} | } | ||
+ | |||
+ | ==フォーカス移動== | ||
+ | InputField inputnext = GameObject.Find("/Canvas/InputFieldNext").GetComponent<InputField>(); | ||
+ | inputnext.ActivateInputField(); | ||
+ | |||
+ | 参考:https://gamefbb.com/%E3%80%90unity%E3%80%91inputfield%E3%81%AB%E3%83%95%E3%82%A9%E3%83%BC%E3%82%AB%E3%82%B9%E3%81%99%E3%82%8B/ | ||
==参考== | ==参考== | ||
InputField公式:https://docs.unity3d.com/ja/530/Manual/script-InputField.html | InputField公式:https://docs.unity3d.com/ja/530/Manual/script-InputField.html |
2019年2月25日 (月) 00:54時点における版
目次
入力欄に文字列を入れる
GameObject objtext = GameObject.Find ("Canvas/InputField"); objtext.GetComponent<InputField> ().text = name;
入力欄に文字列を取得
GameObject objtext = GameObject.Find ("Canvas/InputField"); Debug.Log(objtext.GetComponent<InputField> ().text);
or
GameObject objtext = GameObject.Find ("Canvas/InputField/Text"); Debug.Log(objtext.GetComponent<Text> ().text);
数字のみに限定する
GameObject objtext = GameObject.Find("Canvas/InputField"); objtext.GetComponent<InputField>().contentType = InputField.ContentType.IntegerNumber;
InputFieldに日本語入力させる
LineTypeをMulti Line Submitへ
Unity2017.xでandroidでInputFieldに日本語入力させる
https://qiita.com/Gok/items/35329c717203e86774f0
InputFieldの下のTextに参考pageのコードをアタッチする
入力補助非表示機能
Hide Mobile Input モバイル端末でスクリーンキーボードにアタッチされる標準の入力フィールドを非表示にします。iOS のみで有効。
とあるがiPhoneXSで表示された・・・。他のiphoneでは試してない。
入力変更・確定があった時のイベント
// 入力が確定した時 InputField input = GameObject.Find("/Canvas/InputField").GetComponent<InputField>(); input.onEndEdit.AddListener(delegate { GameObject.Find("/Canvas/CheckText").GetComponent<Text>().text = "onEndEdit"; }); // 文字の変更があった時 input.onValueChanged.AddListener(delegate { GameObject.Find("/Canvas/CheckText").GetComponent<Text>().text = "onValueChanged"; });
入力変更・確定があった時のイベント(別メソッドで実行)
void Start() { InputField input = GameObject.Find("/Canvas/InputField").GetComponent<InputField>(); input.onValueChanged.AddListener(OnValueChanged); } void OnValueChanged(string value) { Debug.Log(value);// 変更後の文字列 }
フォーカス移動
InputField inputnext = GameObject.Find("/Canvas/InputFieldNext").GetComponent<InputField>(); inputnext.ActivateInputField();
参考
InputField公式:https://docs.unity3d.com/ja/530/Manual/script-InputField.html