- 此问题在此处已有答案**:
What is a NullReferenceException, and how do I fix it?(27个答案)
昨天关门了。
我是Unity的新手,一直在关注this tutorial。基本上,我试图让一个按钮在按下时清除一大块文本。我很确定我遵循了所有的步骤,但当我点击按钮时,我得到了a NullReferenceException error。
我错过了什么/做错了什么?如果我将来遇到这个错误,有什么提示吗?
下面是我的代码,应该和教程中的完全一样:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class ButtonControl : MonoBehaviour
{
public GameObject theText;
public void ClearText()
{
theText.GetComponent<InputField>().text = "";
}
}
Here's the hierarchy image、the GameObject I created和my button command中的一个。
1条答案
按热度按时间iswrvxsc1#
这里可能发生了两件事,都很容易修复:
1.未定义文本。进入检查器(在Unity编辑器中,屏幕右侧的框)并找到您附加脚本的位置(ButtonControl)。应该有一个标题为“文本”的框。如果该框中显示“无”,则表示您尚未提供对该对象的引用。将游戏对象及其输入字段拖放到其中。
1.如果定义了文本,这意味着你定义的游戏对象没有输入域。检查它是否是正确的对象(应该有输入域的对象)。如果是正确的对象,添加一个输入域组件。