Hint/Error InputField 消息 (Unity)
Hint/Error message for InputField (Unity)
有了 Android/Java 你可以使用这样的东西
myEditText.setError("This field cannot be blank");
在 EditText
:
中显示输入文本的错误 message/hint
在 C# 中是否有与 Unity 的 InputField
类似的东西,或者您是否必须自己制作(例如,文本在 5 秒后自动消失)?
在Unity/Windows游戏中有没有常用的design/layout来显示这样的消息?
没有,但您可以自己制作!
添加一个新的 GameObject 作为您的 InputField 附加到的 GameObject 的子项。
您可以随意编辑此游戏对象,但只需添加一个 UnityEngine.UI.Text 就可以了,并确保新游戏对象在默认情况下未处于活动状态。
现在使用您的 InputField 将脚本添加到 GameObject,并向其中添加如下内容:
public void OnStoppedEditing(string text) {
if (text == "") {
errorWindow.SetActive(true);
errorText.text = "This field cannot be blank";
}
}
public void Start() {
//adds a listener that runs OnStoppedEditing when you stop editing myField
myField.onEndEdit.AddListener(delegate {OnStoppedEditing(myField); });
myField = gameObject.getComponent<InputField>();
errorText = errorWindow.getComponent<Text>();
}
public GameObject errorWindow;
Text errorText;
InputField myField;
确保将 "using UnityEngine.UI;" 添加到脚本的顶部
保存脚本并将 errorWindow 应用于您创建的子游戏对象!
请注意,我没有测试此代码(我现在无法访问带有 unity 的电脑)所以如果有任何错误,请直接询问 :)
有了 Android/Java 你可以使用这样的东西
myEditText.setError("This field cannot be blank");
在 EditText
:
在 C# 中是否有与 Unity 的 InputField
类似的东西,或者您是否必须自己制作(例如,文本在 5 秒后自动消失)?
在Unity/Windows游戏中有没有常用的design/layout来显示这样的消息?
没有,但您可以自己制作!
添加一个新的 GameObject 作为您的 InputField 附加到的 GameObject 的子项。 您可以随意编辑此游戏对象,但只需添加一个 UnityEngine.UI.Text 就可以了,并确保新游戏对象在默认情况下未处于活动状态。
现在使用您的 InputField 将脚本添加到 GameObject,并向其中添加如下内容:
public void OnStoppedEditing(string text) {
if (text == "") {
errorWindow.SetActive(true);
errorText.text = "This field cannot be blank";
}
}
public void Start() {
//adds a listener that runs OnStoppedEditing when you stop editing myField
myField.onEndEdit.AddListener(delegate {OnStoppedEditing(myField); });
myField = gameObject.getComponent<InputField>();
errorText = errorWindow.getComponent<Text>();
}
public GameObject errorWindow;
Text errorText;
InputField myField;
确保将 "using UnityEngine.UI;" 添加到脚本的顶部
保存脚本并将 errorWindow 应用于您创建的子游戏对象!
请注意,我没有测试此代码(我现在无法访问带有 unity 的电脑)所以如果有任何错误,请直接询问 :)