Unity消息

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)。

posted @ 2015-05-08 21:12 穷鬼 阅读(...) 评论(...) 编辑 收藏