Unity技术手册之Toggle切换使用实例

 更新时间:2022年11月08日 08:50:10   作者:芝麻粒儿  
这篇文章主要为大家介绍了Unity技术手册之Toggle切换使用实例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

👉实践过程

该组件的原理其实就控制一个目标组件的显示和隐藏,配合其他图片背景内容造成是一个开关的错觉。如图,是默认系统创建的一个Toggle控件。

重点在Toggle上,可以看到Toggle组件中的Transition和Button中的一样,有四个设置选项(下方有图,重点属性)无、颜色过度、精灵图切换过度、动画过度。更多详情可看小空Button的内容。

Is On:是否打开,对勾表示显示了下方Graphic属性中指定的图片,否则是隐藏,代码中可gameObject.GetComponent().isOn = false;随时修改

Toggle Transition:有两个值None和Fade,表示显示隐藏过程是否有渐变效果(时间很多)。

Graphic:指定要控制显示隐藏的图片。

Group:是开关组的概念,可以实现单选按钮功能。

On Value Changed(Boolean):类似于Button中的On Click,在这里添加事件,可以使得开关被点击的同时触发一些事件。

Toogle组 案例

创建一个空物体,挂载Tiggle Group组件,之后创建两个Toggle组件,如下图:

然后将Toggle Group拖拽如两个Toggle组件的Group属性中,这时会如下图显示。

当勾选上Toggle Group中Allow Switch Off时,同一时间运行所有开关默认都是关闭的,不勾选则至少保留一个开关是开启的。

运行,就已经有了初步的效果,我们再添加点击事件,创建个TestToggle脚本,

public class TestToggle : MonoBehaviour
{
    public void ToggleChange(bool stage)
    {
        Debug.Log("注意一定要选择Dynamic bool下的这个方法名");
    }
    public void ToggleChange(GameObject toggleGameObject)
    {
        Toggle tempToggle = toggleGameObject.GetComponent<Toggle>();
        switch (toggleGameObject.name)
        {
            case "Toggle一":
                if (tempToggle.isOn)
                {
                    Debug.Log("点击了Toggle一" + "==" + tempToggle.isOn);
                }
                else
                {
                    Debug.Log("点击了Toggle一" + "==" + tempToggle.isOn);
                }
                break;
            case "Toggle二":
                if (tempToggle.isOn)
                {
                    Debug.Log("点击了Toggle一" + "==" + tempToggle.isOn);
                }
                else
                {
                    Debug.Log("点击了Toggle一" + "==" + tempToggle.isOn);
                }
                break;
            default:
                break;
        }
    }
}

将脚本挂载在Toggle Group中,然后给Toggle一和Toggle二添加事件,将Toogle Group拖拽进来,然后方法的传递参数是Toggle自身,如我们上图所示。

运行后

以上就是Unity技术手册之Toggle切换使用实例的详细内容,更多关于Unity技术Toggle切换的资料请关注脚本之家其它相关文章!

相关文章

  • 详解C#中的定时器Timer类及其垃圾回收机制

    详解C#中的定时器Timer类及其垃圾回收机制

    这篇文章主要介绍了C#中的定时器Timer类及其垃圾回收机制,讲解了Timer相关的单线程异步工作,需要的朋友可以参考下
    2016-04-04
  • 使用C#编写简单的图形化的可发送附件的邮件客户端程序

    使用C#编写简单的图形化的可发送附件的邮件客户端程序

    这篇文章主要介绍了使用C#编写一个图形化的可发送附件的邮件客户端程序的方法,文中的示例同样是基于支持smtp协议的邮件服务器,需要的朋友可以参考下
    2016-02-02
  • C#的并发机制优秀在哪你知道么

    C#的并发机制优秀在哪你知道么

    这篇文章主要为大家详细介绍了C#的并发机制,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-02-02
  • C# 泛型编译特性对性能的影响小结

    C# 泛型编译特性对性能的影响小结

    C#作为一种强类型语言,具有丰富的泛型支持,允许开发者编写可以应对不同数据类型的通用代码,这篇文章主要介绍了C# 泛型编译特性对性能的影响 ,需要的朋友可以参考下
    2023-11-11
  • C#计算矩阵的秩实例分析

    C#计算矩阵的秩实例分析

    这篇文章主要介绍了C#计算矩阵的秩实现方法,以实例形式较为详细的分析了C#计算矩阵秩的原理与实现技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-08-08
  • C# 复制与删除文件的实现方法

    C# 复制与删除文件的实现方法

    这篇文章主要介绍了C# 复制与删除文件的实现方法的相关资料,希望通过本文能帮助到大家,让大家理解掌握这部分内容,需要的朋友可以参考下
    2017-10-10
  • 你是不是这样写异常处理代码的呢?

    你是不是这样写异常处理代码的呢?

    本篇文章是对,你是不是这样写异常处理代码的进行了详细的分析介绍,需要的朋友参考下
    2013-05-05
  • C#中动态显示当前系统时间的实例方法

    C#中动态显示当前系统时间的实例方法

    想在网页中动态地显示当前系统的时间,找了好多,不过都是一些停在那里不动的。。。不过皇天不负有心人,终于让我找到了
    2013-05-05
  • Unity实现全屏截图以及QQ截图

    Unity实现全屏截图以及QQ截图

    这篇文章主要为大家详细介绍了Unity实现全屏截图以及QQ截图,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-04-04
  • C#发送内置图片html格式邮件的方法

    C#发送内置图片html格式邮件的方法

    这篇文章主要介绍了C#发送内置图片html格式邮件的方法,涉及C#发送邮件的技巧,非常具有实用价值,需要的朋友可以参考下
    2015-04-04

最新评论