📜  Unity-文本元素

📅  最后修改于: 2020-10-29 04:23:05             🧑  作者: Mango


Unity的内置文本UI是学习者开始设计UI的一个很好的起点,即使它倾向于被功能更强大,效率更高的社区构建资产所掩盖。

就我们的目的而言,香草Text元素已足够开始使用。

文本本身就是一个独特的UI元素,主要是由于该元素的动态性。例如,在屏幕上显示玩家当前的分数时,通常需要通过.toString()方法将分数的数值转换为字符串,然后再显示。

要插入文本UI元素,请转到场景层次结构,创建→UI→文本

创建UI文本

新的Text元素应显示在Canvas区域中。如果我们看一下它的属性,我们将看到一些非常有用的选项。

文字元素

然而,最重要的是“文本”字段。您可以在该字段中输入您希望文本框显示的内容,但是我们要进一步。

要更改文本的字体,必须首先将字体文件作为资产从计算机导入到Unity中。字体不需要主动附加到场景中的任何内容,可以直接从素材资源中引用它。

也可以通过脚本访问Text元素;这就是动态UI重要性的体现。

如上一章所述,而不是控制台,输出按钮被按下了多少次。让我们在游戏屏幕上实际打印出来。为此,我们将打开上一课中的ButtonBehaviour脚本,并对其进行一些更改。

using UnityEngine;
using UnityEngine.UI;
public class ButtonBehaviour : MonoBehaviour {
   int n;
   public Text myText;
   public void OnButtonPress(){
      n++;
      myText.text = "Button clicked " + n + " times.";
   }
}

我们所做的第一个更改是添加一个新的名称空间引用。该参考用于与Unity的UI组件一起使用,因此我们添加了using UnityEngine.UI行。

接下来,我们创建一个公共Text变量,可以在其中将Text UI元素拖放到该变量上。

最后,我们使用myText.text访问此UI元素包含的实际文本。

myText.text

如果保存脚本,我们现在将在ButtonManager中看到Text UI元素的新插槽。只需将包含该Text元素的gameObject拖放到插槽上,然后单击Play按钮。

新版位文字UI元素