Unity设置另一个对象的GUIText

时间:2015-06-14 11:37:01

标签: c# unity3d

我有(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)

在检查器中正确分配了文本对象,因此我对丢失的内容感到迷茫。

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

如果你有

gameController = GetComponent<GameController> ();

确保PlanetController和GameController实际上在场景中的同一个游戏对象上。如果不是,你将不得不使用:

http://docs.unity3d.com/ScriptReference/Object.FindObjectOfType.html