Unity中 的 Invoke方法及其使用

突然看到Invoke方法,记得以前学过,但是忘了,然后马上就把它捡起来了,顺便写了这个随笔,记录一下这个知识点。

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

现在看一下官网给出的API:

public void Invoke(string methodName, float time);

methodName 是方法名,time 是具体几秒

Description

Invokes the method methodName in time seconds.

在具体事件以后调用这个方法

  也就是说,Invoke("SendMessage",5) ,表示的是在“5s”以后执行“SendMessage”方法。

使用Invoke方法需要注意以下三点:

1、它应该在Start,Update,FixUpdate,LateUpdate,还有OnGUI中被调用

2、Invoke中传递的方法不能是含有参数的方法、

3、当Time.ScaleTime = 0时,Invoke()无效,调用不到Invoke方法

当然,Invoke也支持重复调用:

InvokeRepeating("SendMessage",2,3);

表示在“2s”以后开始调用第一次,之后每隔“3s”重复调用一次。

知识点比较简单,欢迎批评指正

原文地址:https://www.cnblogs.com/1217224194-jiang/p/6831282.html