返回

UGUI 系列教程:Toggle 开关组件详解

开发工具

Toggle 开关组件详解

前言

首先,介绍一个 UGUI 中非常常用的组件——Toggle 开关。它可以用来实现开关、复选框等功能。

Toggle 组件的基本使用方法

Toggle 组件的使用方法非常简单,只需要将它拖拽到想要添加开关的物体上即可。添加完成后,在 Inspector 面板中会出现 Toggle 组件的属性。

其中,最重要的属性是 Is On ,它表示开关是否处于打开状态。当 Is On 为 true 时,开关处于打开状态,否则处于关闭状态。

其他属性还有:

  • Transition :开关状态切换时的过渡效果。
  • Graphic :开关的显示图片。
  • Target Graphic :开关状态改变时,受影响的图片。
  • On ValueOff Value :开关打开和关闭时的值。

Toggle 组件的事件

Toggle 组件提供了两个事件:

  • OnValueChanged(bool isOn) :当开关状态发生改变时触发。
  • OnPointerClick(PointerEventData eventData) :当开关被点击时触发。

Toggle 组件的常见用法

Toggle 组件在游戏中有很多常见的用法,比如:

  • 开关 :用来控制某个功能的开关。
  • 复选框 :用来选择多个选项。
  • 单选按钮 :用来选择一个选项,选中一个选项后,其他选项会自动取消选中。

实例:制作一个开关

下面我们来通过一个实例来学习如何使用 Toggle 组件。

  1. 创建一个新的 Unity 项目。
  2. 在场景中创建一个新的 Cube。
  3. 将 Toggle 组件拖拽到 Cube 上。
  4. 在 Inspector 面板中,设置 Toggle 组件的 Is On 属性为 false。
  5. 在 Cube 的子物体中创建一个 Text 对象。
  6. 设置 Text 对象的 Text 属性为 "开关已关闭"。
  7. 在 Toggle 组件的 OnValueChanged(bool isOn) 事件中,添加以下代码:
public void OnValueChanged(bool isOn)
{
    if (isOn)
    {
        text.text = "开关已打开";
    }
    else
    {
        text.text = "开关已关闭";
    }
}

运行场景,你会发现点击 Cube 上的开关,Text 对象的文本会发生变化。

总结

Toggle 组件是 UGUI 中一个非常重要的组件,它可以实现开关、复选框等功能。通过本文的介绍,希望大家能够熟练掌握 Toggle 组件的使用方法。