无码av一区二区三区无码,在线观看老湿视频福利,日韩经典三级片,成 人色 网 站 欧美大片在线观看

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Unity-UnityEvent

2021-01-14 23:16 作者:unity_某某師_高錦錦  | 我要投稿

借助 UnityEvent 可讓用戶驅(qū)動的回調(diào)從編輯時間一直持續(xù)到運行時,無需進(jìn)行額外的編程和腳本配置。

UnityEvent 對許多方面都很有用:

  • 內(nèi)容驅(qū)動的回調(diào)

  • 解耦系統(tǒng)

  • 持久回調(diào)

  • 預(yù)配置的調(diào)用事件

UnityEvent?可添加到任何?MonoBehaviour,并從標(biāo)準(zhǔn) .net 委托之類的代碼中執(zhí)行。當(dāng)?UnityEvent?添加到?MonoBehaviour?時,它會出現(xiàn)在 Inspector 中,并可添加持久回調(diào)。

UnityEvent?與標(biāo)準(zhǔn)委托有類似的限制。也就是說,它們會保留對目標(biāo)元素的引用,而這會阻止對目標(biāo)進(jìn)行垃圾收集。如果將 UnityEngine.Object 作為目標(biāo),而本機(jī)表示消失,則不會調(diào)用回調(diào)。

使用 UnityEvent

要在 Editor 中配置回調(diào),需執(zhí)行以下幾個步驟:

0.確保腳本導(dǎo)入/使用?UnityEngine.Events。

1.選擇 + 圖標(biāo)為回調(diào)添加字段

2.選擇要接收回調(diào)的 UnityEngine.Object(可使用對象選擇器進(jìn)行選擇)

3.選擇要調(diào)用的函數(shù)

4.可為事件添加多個回調(diào)

在 Inspector 中配置?UnityEvent?時,支持兩種類型的函數(shù)調(diào)用:

  • 靜態(tài)。靜態(tài)調(diào)用是預(yù)配置的調(diào)用,具有在 UI 中設(shè)置的預(yù)配置值。這意味著,在調(diào)用回調(diào)時,使用已在 UI 中輸入的參數(shù)調(diào)用目標(biāo)函數(shù)。

  • 動態(tài)。使用從代碼發(fā)送的參數(shù)調(diào)用動態(tài)調(diào)用,并與正在調(diào)用的 UnityEvent 類型相關(guān)。UI 會過濾回調(diào),僅顯示對 UnityEvent 有效的動態(tài)調(diào)用。

通用 UnityEvent

默認(rèn)情況下,Monobehaviour?中的?UnityEvent?動態(tài)綁定到 void 函數(shù)。但不一定非得如此,因為 UnityEvent 的動態(tài)調(diào)用支持綁定到最多包含 4 個參數(shù)的函數(shù)。為此,您需要定義一個支持多個參數(shù)的自定義?UnityEvent?類。此定義十分簡單:

[Serializable] 
public class StringEvent : UnityEvent ?{}

通過將此類的實例添加到您的類而不是基本?UnityEvent,即可使回調(diào)動態(tài)綁定到字符串函數(shù)。

然后,可通過調(diào)用以?string?為參數(shù)的?Invoke()?函數(shù)來對其進(jìn)行調(diào)用。

UnityEvent 可在其通用定義中定義最多 4 個參數(shù)。


Unity-UnityEvent的評論 (共 條)

分享到微博請遵守國家法律
邵阳市| 穆棱市| 玉树县| 永福县| 荔浦县| 托克逊县| 永春县| 中方县| 青海省| 宜良县| 和平县| 鄂温| 汉中市| 平果县| 泌阳县| 兴业县| 云阳县| 沂南县| 缙云县| 海丰县| 开江县| 太仆寺旗| 阿巴嘎旗| 台山市| 舟曲县| 竹北市| 阿拉善盟| 民权县| 沂水县| 资源县| 蓝田县| 台东市| 乌恰县| 遵化市| 喀什市| 富平县| 四川省| 夹江县| 望城县| 吴江市| 秦皇岛市|