using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class MyAudioSource : MonoBehaviour{
// 1、定义委托协议
public delegate void MyBoolChangedDelegate(bool value);
public MyBoolChangedDelegate OnBoolValueChanged;
private bool boolValue;
public bool BoolValue
{
get { return boolValue; }
set
{
boolValue = value;
if (OnBoolValueChanged != null)
{
// 4、调用委托
OnBoolValueChanged.Invoke(boolValue);
}
}
}
void Start () {
// 3、委托绑定
OnBoolValueChanged = BoolChangeDelegate;
}
private void Update()
{
if (Input.GetMouseButtonDown(0))
{
BoolValue = !BoolValue;
}
}
// 5、清空委托
private void OnDestroy()
{
OnBoolValueChanged = null;
}
// 2、定义委托方法
void BoolChangeDelegate(bool result)
{
print("Current bool result is: " + result);
}
}
委托
最新推荐文章于 2018-07-09 11:40:58 发布