1.C#调用lua函数参数为空的问题
在C#中调用以(:)定义的函数传参时,self被第一个参数覆盖,而obj将为空
MessagePanel = {};
function MessagePanel:Test1(obj)
--lua调用正常,obj为传入参数,self为MessagePanel本身
--C#调用异常,obj为空,self为传入的参数,
print(type(obj)..type(self))
end
function MessagePanel.Test2(obj)
--lua和C#调用都是正确的
print(type(obj))
end
2.C#调用不到Lua父类函数的问题
在Lua中调用table的元表函数是可以的。
在C#中调用Lua中table的元表函数是找不到的。
3.Lua中调用不到C#对象的父类函数
问题原因,
因为父类没有生成wrap
解决办法,
生成所有父类的wrap,注意中间不能间断(父类的父类都需要);