有关Unity 的一些 笔记之消息事件

本文详细介绍了Unity中GameObject的SendMessage、SendMessageUpwards和BroadcastMessage三种消息传递方法的应用,以及如何在NGUI中利用UIEventListener组件实现按钮的事件响应,通过实例演示了如何将BoxCollider与OnClick事件结合使用。

GameObject关于Message带有三种方法,

gameObject.SendMessageUpwards ("test1",4);
gameObject.SendMessage("test2");
gameObject.BroadcastMessage("test3");

 

都有三个参数,第一个函数名,第二个参数,第三个是SendMessageOptions.RequireReceiver //如果没有找到相应函数,会报错(默认是这个状态)
SendMessageOptions.DontRequireReceiver //即使没有找到相应函数,也不会报错,自动忽略。

SendMessageUpwards 会执行gameObject自身与父级上挂的所有Script中写有"test1"的方法。

SendMessage会执行gameObject自身挂的所有Script中写有"test2“的方法。

BroadcastMessage会执行gameObject自身与子级上挂的所有Script中写有"test3"的方法。

关于NGUI

使用NGUI创建的按钮添加有BoxCollider,这个collider响应鼠标事件OnClick()等事件。

也可以使用UIEventListener,第一步,添加BoxCollider和UIEventListener,第二步,调用委托的方法,

gameObject.GetComponent<UIEventListener>().onClick = click; void click(GameObject go)。

 

转载于:https://www.cnblogs.com/sevenmoons/p/3990397.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值