NGUI中EventDelegate时间委托的使用方法

来源:互联网 发布:mac如何安装flash控件 编辑:程序博客网 时间:2024/06/05 02:59

EventDelegate是用于底层进行消息传递和调用的事件委托类型,主要用于对对象事件的监听和处理。

实际上是一个能够持有对某个方法的引用的类。下面以一个UIButton的单击事件为例,将ClickTheButton

挂载到EventDelegate下面进行回调。源代码如下:


using UnityEngine;using System.Collections;public class ButtonClick : MonoBehaviour {    //声明UIButton组件的引用,作为获取组件的引用变量    public UIButton myButton;// Use this for initializationvoid Start () {        if (myButton != null) {            EventDelegate theButtonClickEvent = new EventDelegate(this, "ClickTheButton");            //Nofity回调本身就是一个事件组,直接注册一个EventDelegate类型的事件            myButton.onClick.Add(theButtonClickEvent);                    }}// Update is called once per framevoid Update () {}    public void ClickTheButton() {        Debug.Log("单击myButton按钮!");    }}
可以将该代码绑定到任何一个GameObject上面,为方便管理建议绑定到UIRoot下面,然后将一个附有UIButton和

Box Collider组件的物体添加到myButton的引用下面,最后运行脚本就可以在Console视图看到下面的信息提示。

   





1 0
原创粉丝点击