zoukankan      html  css  js  c++  java
  • c# event Action 判断事件列表中是否存在这个委托

    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

  • 相关阅读:

    守护线程
    下载图片
    多线程
    self的作用
    设置项目地址环境
    对象 类
    ValueError: urls must start with a leading slash
    mock挡板接口开发
    K&R——第五章 指针与数组
  • 原文地址:https://www.cnblogs.com/wonderKK/p/4233838.html
Copyright © 2011-2022 走看看