quick-coco2d下的事件
qucik下的事件机制很简洁,也很简单,能够处理大多数的自定义时间,我们新建一个类型,然后用扩展的方式实现事件,之前quick的文档上很详细,但是很悲哀,傻逼的的网站现在是404,记下来,怕到时候忘记了
我这里新建了 一个layer
local PauseLayer = class("PauseLayer", function()
return display.newColorLayer(ccc4(162,162,162,128))
end)
function PauseLayer:ctor()
cc.GameObject.extend(self):addComponent("components.behavior.EventProtocol"):exportMethods()
//我这里添加了一个menu
local resume = ui.newImageMenuItem({
image = "image1.png",
imageSelected = "image2.png",
listener = function()
//按钮的响应事件
self:resume()
end
})
menu:setPosition(display.left, display.bottom)
self:addChild(menu)
end
function PauseLayer:resume()
//这里增加了的是自定义的事件
self:childClickEvent()
end
function PauseLayer:childClickEvent()
self:dispatchEvent({name= "HELLO_FISH"})
end
在调用页面
self.layer= PauseLayer.new()
self.layer:addEventListener("HELLO_FISH",handler(self, self.onChildClick))
self:addChild(self.layer)
function TestGameScene:onChildClick()
printf("hello kitty\n");
end
这就完成了自定义事件的创建和使用,用完要记得在onexit中 clean呀