在本章中,我们将了解如何将UI元素插入到场景中并开始使用它们.
让我们从按钮开始.要插入按钮,请右键单击"场景层次结构",然后转到创建 → UI → 按钮的.如果您没有现有的Canvas和EventSystem,Unity会自动为您创建一个,并将按钮放在Canvas中.
请记住,在叠加渲染模式(这是默认模式)中,画布的大小独立于相机的大小.你可以点击游戏标签进行测试.
如果您播放场景,您会注意到该按钮已经具有一些标准功能,例如检测鼠标悬停在它上面,以及按下时改变颜色.
按钮需要在UI中实际有用的功能.此功能可以通过其属性添加.
让我们创建一个新脚本,并将其命名为 ButtonBehaviour .
public class ButtonBehaviour : MonoBehaviour { int n; public void OnButtonPress(){ n++; Debug.Log("Button clicked " + n + " times."); } }
我们制作了一个简单的方法,记录我们点击按钮的次数.
注意 : 这种方法必须公开;否则Button的功能就不会注意到它.
让我们创建一个空的GameObject并将此脚本附加到它上面.我们这样做是因为按钮本身不会做任何事情;它只在其脚本中调用指定的方法.
现在,进入Button的属性,找到 OnClick()属性.
点击底部标签上的+图标,新条目应显示在列表中.
此条目定义按钮按下的对象,以及调用该对象脚本的功能.由于按下按钮时使用了事件系统,只需将它们添加到列表中即可触发多个函数.
拖放空的GameObject,其中包含 ButtonManager 我们在无(对象)插槽中创建的脚本.
导航无功能下拉列表,并查找我们的 OnButtonPress 方法. (请记住,它可以命名任何你想要的名称,OnButtonPress只是一个标准化的命名约定.)你应该在 ButtonBehaviour 部分找到它.
如果你玩现在游戏,您可以测试按钮,当然,控制台会打印出您按下按钮的次数.