您的位置:首页 > 编程语言 > C#

c# event Action 判断事件列表中是否存在这个委托

2015-01-19 15:10 429 查看
using UnityEngine;
using System.Collections;
using System;

public class eventTest : MonoBehaviour
{

private event Action<uint> onClick;
private uint i = 0;
// Use this for initialization
void Start ()
{
onClick += OnClick;
onClick += OnClick;
onClick += OnClick;
onClick += OnClick;
onClick += OnClick;
onClick += OnClick;
onClick += OnClick2;
}

// Update is called once per frame
void Update ()
{
if (Input.GetMouseButtonUp(0))
{
Delegate[] list = onClick.GetInvocationList();

Debug.Log("存在在" + Array.IndexOf(list, (Action<uint>)OnClick2));

//for (int i = 0; i < list.Length; i++ )
//{
//    if(list[i].Equals((Action<uint>)OnClick))
//    {

//    }
//}
}
}

private void OnClick(uint i)
{
Debug.Log(i);
i++;
}

private void OnClick2(uint i)
{

}
}


不存在输出为-1,存在输出为大于0的index
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: