一.Toggle 组件介绍

1.Toggle:切换键,复选框。[简单演示] 2.Toggle 组成部分分析 Toggle 组件[核心组件,用于控制整个UI 游戏物体] |—Image 组件[背景图片] | |—Image 组件[复选标记,只要当选中时,该图片才会显示] |—Text 组件[功能文字描述] [

](http://www.wjgbaby.com/wp-content/uploads/2017/11/17112509-300x150.jpg)
](http://www.wjgbaby.com/wp-content/uploads/2017/11/17112509-300x150.jpg)

二.Toggle 组件属性

1.基本属性 Toggle 组件和Button 组件的基本属性是比较类似的,所以这里不再写了。可以去看看button组件。 2.特有属性 Is On:表示当前Toggle 的状态,是选中还是未选中。另外该属性只是响应 UI 的状态切换,在面板上操作该属性不会影响UI 状态。 Target Graphic:对应的是Toggle 的背景图; Graphic:对应的是Toggle 的选中图。

[

](http://www.wjgbaby.com/wp-content/uploads/2017/11/17112510-254x300.png)
](http://www.wjgbaby.com/wp-content/uploads/2017/11/17112510-254x300.png)

三.Toggle 事件监听

1.“当值改变事件”监听 m_Toggle.onValueChanged.AddListener(ToggleChanged); 2.通过代码改变Toggle 状态 m_Toggle.isOn = true;

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class tempUGUI : MonoBehaviour {

private Toggle m\_Toggle;

void Start () {
    m\_Toggle = gameObject.GetComponent<Toggle>();
    m\_Toggle.onValueChanged.AddListener(ButtonClickTest);
}

void Update(){
    if (Input.GetKeyDown(KeyCode.W)){
        m\_Toggle.isOn = false;
    }
    else if (Input.GetKeyDown(KeyCode.S)){
        m\_Toggle.isOn = true;
    }
}

private void ButtonClickTest(bool temp){
    Debug.Log(temp);
}

}