using UnityEngine; using System.Collections; using UnityEngine.UI; /// /// 脚本位置:UGUI的按钮身上 /// 脚本功能:动态的添加按钮的点击事件 /// public class ListenerTest : MonoBehaviour { private Button button ; void Start () { button = GetComponent(); button.onClick.AddListener( delegate() { TestButtonClick testClick = GameObject.FindObjectOfType(); testClick.OnClickButton(); } ); } } [csharp] view plain copy using UnityEngine; using System.Collections; /// /// 脚本位置:摄像机身上 /// 脚本功能:当点击按钮的时候动态的添加此脚本上的OnClickButton方法 /// public class TestButtonClick : MonoBehaviour { // Use this for initialization void Start () { } // Update is called once per frame void Update () { } public void OnClickButton() { Debug.Log("已经成功监听按钮的点击事件"); } }