self.mainArmature:getAnimation():setFrameEventCallFunc(self,self.frameArmatureCall) 这样写会报错
self.mainArmature:getAnimation():setFrameEventCallFunc(self.frameArmatureCall) 这样写 回调函数参数不传 请问各位大牛如何解决的?
setFrameEventCallFunc(
function (…)
return self:frameArmaterCall(…);
end
自己封装,懒得打给你了 
写个闭包
local function frameArmatureCall( args)
self.frameArmatureCall
写个闭包
local function frameArmatureCall( args)
self.mainArmature: frameArmatureCall(args)
end
-------定义
self.mainArmature: frameArmatureCal(args)
— code
end
貌似 setFrameEventCallFunc 直接传一个普通的LUA函数就可以了
orz 
我太蠢 没看懂你写的是什么意思= =!
这样写function (…) 再function (…) 里面是不能用slef:的吧?
哎 我怕了你了,写给你算了
function register(obj, func)
return
function (…)
return func(obj, …);
end;
end
function Father:doA(…)
–dosomethin;
end
function Father:doB(…)
registerScript(register(self, self.doA));
end
没试过别问不行,我已经用了好几个月了……
看不懂自己想办法……
非常感谢你 原来是这个意思
其实我是没看懂meixuelei写的 。
你之前写的 代码端 我疑问的是语法上的问题
总之非常感谢你 ~
一开始写错了,然后 回复了一下自己 补全了 开头就说了 用闭包函数 去实现对回调的封装 。闭包如何写 可以看看 lua教程 就明白了。
function fun()
local function callBack(args) – 闭包函数 通过闭包实现对类方法的访问
self:callBack(args)
end
self.mainArmature:getAnimation():setFrameEventCallFunc(callBack)
end
-----------------实现回调的处理----------------------
function class:callBack(args)
end
语法是编辑错了 意思 就是 通过闭包函数 去封装你调用的回调 其他的不解释了