突然看到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”重復調用一次。
知識點比較簡單,歡迎批評指正