Invoke()

Invoke() 方法是 Unity3D 的一种委托机制。

void Invoke(string methodName, float time); 第一个参数是要调用的函数名,后一个参数是延迟的时间。

意思是:在time时间后调用函数名为methodName方法。

 

Invoke("SendMsg", 5);  -- 5 秒之后调用 SendMsg() 方法

Invoke() 支持重复调用:void InvokeRepeating(string methodName, float time, float repeatRate);

意思是:time秒后调用 调用函数名为methodName方法,并且之后每隔 repeatRate秒调用一次调用函数名为methodName方法。

InvokeRepeating("SendMsg", 2 , 3);  -- 2 秒后调用 SendMsg() 方法,并且之后每隔 3 秒调用一次 SendMsg () 方法。

 

注意:

1 :它应该在 脚本的生命周期里的(Start、Update、OnGUI、FixedUpdate、LateUpdate)中被调用。
2:Invoke(); 不能接受含有 参数的方法。
3:在 Time.ScaleTime = 0; 时, Invoke() 无效,因为它不会被调用到。

你可能感兴趣的:(Invoke())