「Unity/TMPro/InputField」の版間の差分
提供: 初心者エンジニアの簡易メモ
(→取得時に文末に"\u200B"がつく) |
(→入力欄を選択したときに***から通常文字に変える) |
||
行27: | 行27: | ||
}); | }); | ||
</pre> | </pre> | ||
+ | |||
+ | ==入力できないように== | ||
+ | userIdInputField.interactable = value; |
2023年6月23日 (金) 02:41時点における版
目次
TMPのInputFieldサンプル
using TMPro; TMP_InputField inputField = null; inputField.onValueChanged.AddListener(delegate { Debug.Log(inputField.text); });
Textオブジェクトへのアクセス
GameObject.Find("/Canvas/InputField/Text Area/Text").transform.GetComponent<TextMeshProUGUI>().text = "test";
取得時に文末に"\u200b"がつく
"InputField/Text Area/Text"で取得した場合には、文末に"\u200b"がつくが、置換すればよい。
return GameObject.Find("/Canvas/InputField/Text Area/Text").transform.GetComponent<TextMeshProUGUI>().text.Replace("\u200b", "");
もしくは、InputFieldのTMP_InputFieldのtextを取得すれば良い。
return GameObject.Find("/Canvas/InputField").GetComponent<TMP_InputField>().text;
入力欄を選択したときに***から通常文字に変える
// フォーカスいた時に***から正常に表示されるように TMP_InputField userIdInputField = GameObject.Find("UserIdInputField").GetComponent<TMP_InputField>(); userIdInputField.contentType = TMP_InputField.ContentType.Password; userIdInputField.text = "test"; userIdInputField.onSelect.AddListener(delegate { userIdInputField.contentType = TMP_InputField.ContentType.Standard; });
入力できないように
userIdInputField.interactable = value;