最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(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的評論 (共 條)

分享到微博請遵守國家法律
车致| 仙游县| 安顺市| 大连市| 施甸县| 乌拉特前旗| 焉耆| 张掖市| 金乡县| 玉山县| 大足县| 宜川县| 常德市| 马边| 新闻| 自贡市| 福建省| 庆安县| 合水县| 信阳市| 蛟河市| 博乐市| 胶州市| 社会| 台湾省| 蚌埠市| 阳山县| 石泉县| 遵义县| 仁怀市| 彭州市| 丰台区| 台州市| 陆川县| 正宁县| 广水市| 喜德县| 宁南县| 扶余县| 固安县| 花莲市|