U3DC.COM | 优三帝研究院

Menu

Unity委托简单例子

public class EventDispatcher : MonoBehaviour
{
    public delegate void EventHandler(GameObject e);//定义委托
    public event EventHandler MouseOver;
    void Start()
    {
        OnMouseOver();
    }
    void OnMouseOver()
    {
        if (MouseOver != null)
        {
            MouseOver(this.gameObject);//传递参数
        }
    }
}
public class EventDis : MonoBehaviour {

    public GameObject game;
    EventDispatcher EventHand;
        void Start () {
                EventHand = game.GetComponent();
        }
    void Listener(GameObject g) 
    {
        Debug.Log(g.name);        
    }
    void OnMouseDown()
    {
        EventHand.MouseOver += Listener;//实现委托
    }
}
打赏
— 于 共写了449个字
— 文内使用到的标签:

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据