zoukankan      html  css  js  c++  java
  • 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;
            }
        }
    }


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

  • 相关阅读:
    关闭防火墙,仍然无法访问80端口 centos
    apache添加虚拟主机(windows下)
    PHP实现文件下载
    chmod 777 修改权限之后,文件夹颜色变绿:解决方案
    element ui table(表格)点击一行展开
    vue中eventbus 多次触发的问题
    console.log、toString方法与js判断变量类型
    另一个维度:cocos-2d VS vue
    浏览器内置的base64方法
    H5网页涂鸦canvas
  • 原文地址:https://www.cnblogs.com/madinglin/p/8476770.html
Copyright © 2011-2022 走看看