在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>();
其他监听的添加方法的话和该步骤大差不差可以自行添加。
如果添加了以上的方法之后还是不行的话可能是没有生成的问题可以通过第二个按钮生成
注:生成失败的话先使用第一个选项生成然后会出现一个报错是缺少命名空间添加上去生成解决方案启动Unity启动之后退出再次使用第二个生成即可