UGUI组件之Toggle 组件简单笔记


Toggle 组件
========================================================
Toggle 切换键 复选框
========================================================
组成部分:
Toggle 核心组件
  --Image 背景图片
    --Image 复选标记,选中时该图片才会显示
  --Text 描述文字
----------------------------------
面板参见Button
----------------------------------
Is On 是否选中
仅用来响应UI状态切换,在面板中控制切换,不会影响UI的显示状态。可用代码改变状态
----------------------------------
Target Graphic 背景图
Toggle Transition 切换过渡 Fade 渐变
Graphic 选中图
Group
----------------------------------
Toggle 事件监听
On Value Changed(Boolean) 当值改变时
----------------------------------
1.“当值改变事件”监听
m_Toggle.onValueChanged.AddListener(ToggleChanged);
//(ToggleChanged)监听事件执行用户自定的方法
2.通过代码改变 Toggle 状态
m_Toggle.isOn = true;
========================================================
4.Toggle 组件美化
1.复选框方式
操作演示
选中状态两张图片均可显示,因为图片是叠加关系。

using UnityEngine;
using UnityEngine.UI;

public class ToggleDemo : MonoBehaviour {
    private Toggle m_toggle;

    void Start () {
        m_toggle = gameObject.GetComponent<Toggle>();
        m_toggle.onValueChanged.AddListener(ToggleChanged);
        m_toggle.isOn = false;
    }
    private void ToggleChanged(bool value)
    {
        print(value);
    }
    public void ToggleChngedtwo(bool value)
    {
        print(value+"面板");
    }
}

 


2.切换键[开关]方式
操作演示
选中状态时我们需要监听事件把背景图隐藏,因为图片是交错关系。
gameObject.transform. Find("Background").GetComponent<Image>().enabled = false;

using UnityEngine;
using UnityEngine.UI;

public class ToggleIsOnDemo : MonoBehaviour {
    private Toggle m_toggle; 
    void Start () {
        m_toggle = gameObject.GetComponent<Toggle>();
        m_toggle.onValueChanged.AddListener(IsOnValue);
        gameObject.transform.Find("Background").GetComponent<Image>().enabled = false;
    }
    private void IsOnValue(bool value)
    {
        if (value)
        {
            gameObject.transform. Find("Background").GetComponent<Image>().enabled = false;
        }
        else
        {
            gameObject.transform.Find("Background").GetComponent<Image>().enabled = true;
        }
    }
}

 


========================================================


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM