代码中动态添加Button的点击事件

时间:2021-09-14 00:06:31



using UnityEngine;
using System.Collections;
using UnityEngine.Events;//引用事件命名空间,这个必须要有
using UnityEngine.UI;//引用UI命名空间

public class Test : MonoBehaviour 
{
        // Use this for initialization
        void Start ()
    {
        //定义Action,并赋予delegate方法
        UnityAction<Button> btnActions = new UnityAction<Button>(onClick);
        //找到Button控件,并订阅事件
        Button btn = gameObject.GetComponent<Button>();
        btn.onClick.AddListener(btnActions);
        }

    void onClick(Object obj)
    {
        Debug.Log("button===========");
        Debug.Log("button-----------" + obj.name);
    }
}