我有(PlanetController):
private GameController gameController;
...
void OnMouseEnter()
{
gameController.setClassText("Orbital speed: " + orbitSpeed);
}
在GameController脚本中:
public class GameController : MonoBehaviour {
public GUIText classText;
void Start () {
this.setClassText ("");
}
public void setClassText(string text) {
classText.text = text;
}
}
但我得到了:
NullReferenceException: Object reference not set to an instance of an object
PlanetController.OnMouseEnter () (at Assets/scripts/PlanetController.cs:29)
在检查器中正确分配了文本对象,因此我对丢失的内容感到迷茫。
我该如何解决这个问题?
答案 0 :(得分:0)
如果你有
gameController = GetComponent<GameController> ();
确保PlanetController和GameController实际上在场景中的同一个游戏对象上。如果不是,你将不得不使用:
http://docs.unity3d.com/ScriptReference/Object.FindObjectOfType.html