查看: 400|回复: 0
打印 上一主题 下一主题

[其他] Unity委托简单例子

[复制链接]

9903

主题

126

听众

7万

积分

首席设计师

Rank: 8Rank: 8

纳金币
53464
精华
316

最佳新人 热心会员 灌水之王 活跃会员 突出贡献 荣誉管理 论坛元老

跳转到指定楼层
楼主
发表于 2015-8-31 23:34:35 |只看该作者 |倒序浏览
Unity委托简单例子
  1. public class EventDispatcher : MonoBehaviour
  2. {
  3.     public delegate void EventHandler(GameObject e);//定义委托
  4.     public event EventHandler MouseOver;
  5.     void Start()
  6.     {
  7.         OnMouseOver();
  8.     }
  9.     void OnMouseOver()
  10.     {
  11.         if (MouseOver != null)
  12.         {
  13.             MouseOver(this.gameObject);//传递参数
  14.         }
  15.     }
  16. }
  17. public class EventDis : MonoBehaviour {

  18.     public GameObject game;
  19.     EventDispatcher EventHand;
  20.         void Start () {
  21.                 EventHand = game.GetComponent<EventDispatcher>();
  22.         }
  23.     void Listener(GameObject g)
  24.     {
  25.         Debug.Log(g.name);        
  26.     }
  27.     void OnMouseDown()
  28.     {
  29.         EventHand.MouseOver += Listener;//实现委托
  30.     }
  31. }
复制代码
分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏0 支持支持0 反对反对0
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

关闭

站长推荐上一条 /1 下一条

手机版|纳金网 ( 闽ICP备08008928号

GMT+8, 2024-5-6 18:23 , Processed in 0.115788 second(s), 29 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部