【发布时间】:2015-07-23 08:07:23
【问题描述】:
我是 Unity 新手,想从输入文本字段中获取值。我发现了这个问题 Get text from Input field in Unity3D with C#,但是当我执行它时,总是会出现同样的错误: NullReferenceExcpetion : Object reference not set to an instance of an object。 这似乎是一个愚蠢的错误,我尝试了一切,但似乎无法修复它。 我的代码:
void Start () {
var input = gameObject.GetComponent<InputField>();
input.onEndEdit.AddListener(SubmitName);
}
private void SubmitName(string arg0)
{
Debug.Log(arg0);
}
我试着把InputField input;在开始功能之前并擦除var,但仍然没有运气。
如果有人可以帮助我解决这个问题,将不胜感激。
我的脚本目前附在哪里的图片。
【问题讨论】:
-
您应该只在画布或 InputField 上包含脚本。我会把它添加到画布上,这样你就有了一个可以控制他的孩子的元素(InputField 和其他 UI 元素)。但是请将
InputField从Hierarchy拖到inspector底部的空白字段,您可以在其中读取无(输入字段) -
好的,非常感谢,输入字段无法拖动,但我创建了一个新字段,一切正常。非常感谢。
-
我只有一个问题,输出是 InputField(UnityEngine.UI.InputField) 而不是我在输入字段中输入的内容。
-
我真的不知道你的脚本到底是什么,因为你还没有发布它。但在我看来,您忘记在标题中为 ui
using UnityEngine.UI;导入库,因此您可以仅通过名称访问 ui 元素
标签: text unity3d nullreferenceexception input-field