在进行unity游戏制作的C#代码编写时,会遇到“NullReferenceException: Object reference not set to an instance of an object”这样的错误提示。错误的意思翻译过来是“未将对象引用到对象的实例”,意思就是声明了对象,却没有给它赋值,导致运行的时候依旧是null值。
个人遇到这个情况是在获取控件的时候,原代码为: “text1 = GetControl(“Content/Main/Body/Mail1/Text”);” 出错的原因很简单,获取控件的时候遗漏了初始路径并使用了错误的控件名。
这里要提醒大家的是,如果是从零开始获取的控件,一定要记得从最初始的路径开始获取,直接点说就是面板里最上面的控件。一定要核对控件名的拼写,确保正确。这类错误百分五十都是因为拼写控件名错误导致的。而且要注意的是,控件名称不要使用中文符号,类似“(”、“)”的,都无法获取。最简单保险的方法就是获取控件的时候直接从面板里复制控件名称,这样最不容出错。
希望大家都能细心一点,不要为了解决这类由于粗心导致的失误而浪费过多时间。