之前我们讲了quickcocos的组件点击查看
里面提到了如何把自身包装成一个组件。
local clsA = class("clsA",function ()
return display.newNode()
end)
cc(self):addComponent("components.behavior.EventProtocol"):exportMethods()
self.handle = self:addEventListener("myevent",handler(self,self.callback))
若想clsB中想监听clsA这个”myevent”的事件以下写法是错误的
local clsB = class("clsB",self.callback))
这里虽说clsB也是一个组件,而且也有能力调用callback,但是它却收不到clsA发出来的这个事件.原因是,每个组件之间不共享事件通道。clsA的事件只分发到用它注册过的回调上。
因此,这里B要是想监听clsA的事件,则用以下方法
local clsA = require("clsA")
local clsB = class("clsB",function ()
return display.newNode()
end)
self.handle = clsA:addEventListener("myevent",self.callback))
这样子,就可以监听A分发的事件了。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。