Unity ET4.0 UGUI新增監聽問題
阿新 • • 發佈:2018-11-08
在ET框架中使用了ILRuntime,ET框架已經幫我們封裝好了UGUI的Button按鈕的點選事件。其他事件的話並未幫我們進行處理需要自己來進行操作。
在ET中UGUI的Button按鈕事件新增不是AddListener而是Add當然你也可以進行修改
btn.onClick.Add(()=>{
Debug.Log("按鈕被點選");
});
通過上面的方法我們發現按鈕的事件已經可以了。接下來我們新增一下InputField的事件。
1. 滑鼠放到Add方法上F12到定義
在定義中我們可以看到對Button按鈕的事件方法接下來我們寫上我們 InputField的方法
public static void Add(this InputField.OnChangeEvent valueChangeEvent, Action<string> action)
{
valueChangeEvent.AddListener((string str) => action(str));
}
如果只是這樣執行的話還是會報錯。注意紅色框這裡說我們需要新增一段程式碼,那麼這段程式碼在哪裡新增呢?我們找到專案中的
ILHelper.cs檔案
appdomain.DelegateManager.RegisterMethodDelegate<System.String>();
在下方新增一行appdomain.DelegateManager.RegisterMethodDelegate<System.String>();
其他監聽的新增方法的話和該步驟大差不差可以自行新增。
如果添加了以上的方法之後還是不行的話可能是沒有生成的問題可以通過這兩個按鈕生成 注:需要有ILRuntime的巨集