为什么委托事件显示NullReferenceException?

时间:2019-02-21 14:20:57

标签: unity3d

我按照教程编写了代码,但仍然显示此错误,该脚本已附加到游戏对象上 Gamecontroller

GameUI

Error

1 个答案:

答案 0 :(得分:1)

此问题由事件函数的执行顺序引起。

当我检查日志时,在OnEnable的{​​{1}}之前调用了GameUI的{​​{1}}。 因此,当您在GameUI.cs的Awake中访问GameController时,GameController.instance为空。

Unity Manual for Execution Order of Event Functions中,它说GameController.instance.OnGameInfoChangedvoid OnEnable()之前,我想这并不能保证总是如此。

所以,我认为您最好像下面那样修改GameUI.cs。

Awake