using System.Collections; using System.Collections.Generic; using UnityEngine;public class BUttonClick : MonoBehaviour {public UIButton button_01;void Start(){if (button_01 == null){Debug.Log("button组件丢失了");}else{//首先将脚本中的ClicktheButton()方法变成一个EventDelagate类型的事件委托EventDelegate theEvent =new EventDelegate(this, "ClicktheButtton"); //方法1:EventDelegate.Add(组件的Notefy回调组名称,一个EventDelegate类型的事件) EventDelegate.Add(button_01.onClick, theEvent);//方法2:因为Notefy回调本身就是一个事件组,所以直接add一个EventDelegate类型的事件 button_01.onClick.Add(theEvent);}}//切记一定是要为public类型的,不然会报Cound not find method 'ClicktheButton' on ButtonClick的错误public void ClicktheButtton(){Debug.Log("我单击了这个按钮");} }
结尾:一般现在的NGUI封装的比较好,可以直接在控制面板进行拖拽即可,但是代码的事件控制可能更加适合具体的功能需求,各取所需把。