unity中消息传递的三种方法
来源:互联网 发布:qq飞车cdkey软件 编辑:程序博客网 时间:2024/05/21 07:58
unity中提供了对象间消息传递的三种方法:
- BroadcastMessage()方法
- SendMessage()方法
- SendMessageUpwards()方法
BroadcastMessage方法:
void BroadcastMessage (string methodName, object parameter = null, SendMessageOptions options = SendMessageOptions.RequireReceiver)
向该游戏物体及其子物体的所有MonoBehavior发送名字为methodName的消息,其中,parameter为methodName的参数,options决定了发送消息的选项(默认为RequireReceiver,此时如果没有一个组件进行处理就会打印一个错误~)【说是发送消息,实质上是调用MonoBehavior中名称为methodName的函数~,如果接收消息的组件中没有相应名称的函数,就不会执行函数~】
using UnityEngine;using System.Collections;public class MessageTest : MonoBehaviour {public void ApplyMessage(string name){Debug.Log("The name is :" + name);}void Awake(){gameObject.BroadcastMessage("ApplyMessage", gameObject.name);}}
SendMessage方法:
void SendMessage(string methodName, object value = null, SendMessageOptions options = SendMessageOptions.RequireReceiver);
同上,只不过发送对象为该游戏对象的所有MonoBehavior。(父物体、子物体中所有MonoBehavior都不会接收到该消息,即使包含methodName的方法)
SendMessageUpwards方法:
void SendMessageUpwards(string methodName, object value = null, SendMessageOptions options = SendMessageOptions.RequireReceiver);
同上,只不过发送对象为该游戏对象及其所有父对象的所有MonoBehavior。(即使子物体中某些Monobehavior包含该消息,也不会执行~)
0 0
- unity中消息传递的三种方法
- Unity的三种消息传递
- Unity中游戏体的消息传递
- MFC中传递消息的方法
- java向多线程中传递参数的三种方法
- Android中传递对象的三种方法
- Android中传递对象的三种方法
- Android中传递对象的三种方法
- Android中传递对象的三种方法
- C++语言中函数参数传递的三种方法
- Android中传递对象的三种方法
- Android中传递对象的三种方法
- Android中传递对象的三种方法
- Android中传递对象的三种方法
- Android中传递对象的三种方法
- unity的三种物体移动方法
- Unity中使用自定义事件在View之间传递消息
- unity中利用sentmessage发送消息传递多个参数
- mac快捷键
- 为什么Java7开始在数字中使用下划线
- ngrok 内网穿透利器
- 如何打一个既支持模拟器也支持真机的库 .a 文件
- PHP include_once 与include require_once 与 require
- unity中消息传递的三种方法
- 网页端修改
- Android 程序员优选 数据库辅助工具 NaviCat
- 智能指针类之shared_ptr
- jQuery 判断是否包含在数组中 Array[]
- LRU缓存
- STL algorithm算法count(10)
- 菜鸟说说如何使用unity vs
- oracle 如何查看创建表等数据库对象时的DDL语句