【发布时间】:2017-11-23 20:19:34
【问题描述】:
我无法显示文本,并且在执行该方法时收到 NullReferenceException。最重要的是,代码不会停止运行。
// Use this for initialization
void Start()
{
// Default position not valid? Then it's game over
if (!isValidGridPos())
{
Text text;
text = GetComponent<Text>();
text.text = "Game Over";
Destroy(gameObject);
if (Input.GetKeyDown(KeyCode.R))
{
SceneManager.LoadScene(SceneManager.GetActiveScene().buildIndex);
}
}
}
代码来自this tutorial。我只是想为它添加重启和游戏结束消息。
编辑:尝试使用 text = GetComponent() 显示文本不起作用。什么是在实际工作的统一显示文本的另一种方法?我也尝试了 GUIText,但我无法让它在显示器上可见。
【问题讨论】:
-
错误到底发生在哪一行?你确定它不是来自
isValidGridPos()? -
当我向“文本”添加消息时。
-
我明白了,你已经编辑了代码。好的,你确定你有一个文本组件附加到这个脚本也附加到的对象上吗?
-
是的,就是imgur.com/a/VV4XN
-
您将脚本附加到了哪个游戏对象?它需要附加到 GameOver 游戏对象,如果没有,你会得到异常。