「Unity/TMPro/InputField」の版間の差分
提供: 初心者エンジニアの簡易メモ
(→取得時に文末に"\u200B"がつく) |
(→入力できないように) |
||
(同じ利用者による、間の9版が非表示) | |||
行7: | 行7: | ||
}); | }); | ||
</pre> | </pre> | ||
− | |||
==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; | ||
+ | |||
+ | ==入力欄を選択したときに***から通常文字に変える== | ||
+ | <pre> | ||
+ | // フォーカスいた時に***から正常に表示されるように | ||
+ | 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; | ||
+ | }); | ||
+ | </pre> | ||
+ | |||
+ | ==入力できないように== | ||
+ | userIdInputField.interactable = false; |
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 = false;