Unity3d如何在代码中更改UI.Button文本

Unity3d how to change UI.Button text in code

简单的问题,我正在尝试制作一只飞扬的鸟克隆,我需要帮助显示分数。我已将乐谱添加并显示到控制台,但我无法将其显示在 gui 文本上。

我试过 google 如何做到这一点,并观看了很多人的 flappy bird 教程以了解他们是如何做到的,但是当他们引入新的 [=18] 时,他们都是在 unity 4.6 之前=] 系统,他们使用的相同代码似乎不起作用。

那么我如何才能在代码中访问附加到我的游戏对象的 gui 文本?谢谢

如果你想要 4.6 UI 版本。您需要添加 UnityEngine.UI;

C# 使用 UnityEngine.UI; JavaScript 导入 UnityEngine.UI;

确保您在层次结构中有一个 Canvas,并在 Canvas 中创建一个文本对象。

下一步您可以制作一个 public 文本字段,以便 Unity 中的检查器能够看到它,或者只使用 GameObject.Find,我不推荐这样做,因为它真的很慢。

using UnityEngine;
using UnityEngine.UI;

public class FlappyScore : MonoBehaviour{

// Add the Above if you still haven't cause the Text class that you will need is in there, in UnityEngine.UI;

public Text MyScore;

// Go back to Unity and Drag the "text" GameObject in your canvas to this script.

void Start(){

 /* if Having difficulty with the above instruction. Un comment this comment block.
MyScore = GameObject.Find("text").GetComponent<Text>();
*/


  MyScore.text = "50";
 // Your score needs to be casted to a string type.


 }

}