在LuaFramework中实现按钮绑定C#事件和Lua事件(七)

本篇博客主介绍用Lua脚本通过代码去挂在Unity中的按钮事件。
挂载事件分为两种:
一种是挂载lua脚本的方法事件,另一种就是用lua脚本去给按钮挂载C#脚本的事件。
关于挂载方法LuaFramework框架已经在LuaBehaviour脚本(C#脚本)为我们写好,我们只需
要调用方法即可。

下面贴出挂载方法:

第一种:挂载Lua按钮事件

(1):在Panel 脚本里获取Button按钮。
在LuaFramework中实现按钮绑定C#事件和Lua事件(七)_第1张图片
(1):在Ctrl脚本里绑定注册事件。
在LuaFramework中实现按钮绑定C#事件和Lua事件(七)_第2张图片

运行效果:
在LuaFramework中实现按钮绑定C#事件和Lua事件(七)_第3张图片

第二种:用Lua脚本给按钮挂载C#事件
这个绑定法就有点难度的,我看了框架的一些方法,又试了一些方法,还是没能绑定上。
不过有句话说的好:自己动手,丰衣足食嘛。这点小问题怎么能难得到机智的博主呢。嘿~ 嘿 ~ 嘿~ !
其实框架连接的底层也就是通过封装映射,调用C#。所以我在结合了一下【Lua调用C#方法】,基于框架,
模拟了一下框架的调用,成功的实现了Lua用Lua脚本给按钮挂载C#事件。

原理:
哈哈,说了这么多其实很简单,一句话。
就是在Lua按钮事件里套C#事件进行调用。
咱们的目的不就是点击按钮调用C#按钮事件嘛,所以咱们直接把C#按钮事件放到Lua按钮事件里进行点击调用,不就完成绑定了吗,只要点击按钮,Lua按钮事件就会掉C#按钮事件方法,这样不就完成了Lua给按钮绑定C#事件了吗。

使用方法:
(1).如何在lua调用C#方法博主就不说了,就是通过映射,博主在【Lua调用C#方法】以经介绍过了。
下面我们开始实践:

1.在C#脚本里写个按钮事件,并映射到Lua
在LuaFramework中实现按钮绑定C#事件和Lua事件(七)_第4张图片

2.基于第一种方法,在Lua按钮事件里的调用一下映射好的C#方法。当你点击一次方法就被调用一次,从而实现了绑定。
在LuaFramework中实现按钮绑定C#事件和Lua事件(七)_第5张图片
运行结果:

在LuaFramework中实现按钮绑定C#事件和Lua事件(七)_第6张图片
这样就绑定成功了,是不是很简单呢。

当然如果大佬有更好的方法,请回复我,学海无涯,多一份知识,就多一份力量。

原创出品,转载请注明出处。

努力积才能,壹叶便成名。

你可能感兴趣的:(lua)