lua注册事件函数
registerScriptTouchHandler 注册触屏事件
registerScriptTapHandler 注册点击事件
registerScriptHandler 注册基本事件 包括 触屏 层的进入 退出 事件
registerScriptKeypadHandler 注册键盘事件
registerScriptAccelerateHandler 注册加速事件
registerScriptTouchHandler 详解(可以设置单点或多点)
- function gameWindow:addLayerTouchEventMethod1()
- local function onTouchEvent(eventType, x, y)
- --log("eventType = "..tostring(eventType))
- if eventType == "began" then
- --需要返回true
- return onTouchBegan(touch, event)
- elseif eventType == "moved" then
- onTouchMoved(touch, event)
- elseif eventType == "ended" then
- onTouchEnded(touch, event)
- end
- end
- config.bottomLayer:setTouchEnabled(true)
- config.bottomLayer:registerScriptTouchHandler(onTouchEvent)
- end
registerScriptTapHandler 注册点击事件
- function gameWindow:addBtn()
- local btn = cc.MenuItemImage:create("white.png", "black.png", "black.png")
- btn:setPosition(320, 160)
- local function btnClick()
- log("btnClick")
- end
- btn:registerScriptTapHandler(btnClick)
- local menu = cc.Menu:create()
- config.bottomLayer:addChild(menu)
- menu:setPosition(cc.p(0,0))
- menu:addChild(btn)
- end
registerScriptHandler 注册基本事件
注册触屏事件用法
- function gameWindow:addLayerTouchEventMethod2()
- --创建一个单点触屏事件
- local listener = cc.EventListenerTouchOneByOne:create()
- --注册触屏开始事件
- listener:registerScriptHandler(onTouchBegan, cc.Handler.EVENT_TOUCH_BEGAN)
- --注册触屏移动事件
- listener:registerScriptHandler(onTouchMoved, cc.Handler.EVENT_TOUCH_MOVED)
- --注册触屏结束事件
- listener:registerScriptHandler(onTouchEnded, cc.Handler.EVENT_TOUCH_ENDED)
- --获取层的事件派发器
- local eventDispatcher = config.bottomLayer:getEventDispatcher()
- --事件派发器 注册一个node事件
- eventDispatcher:addEventListenerWithSceneGraphPriority(listener, config.bottomLayer)
- end
注册layer的 进入 退出事件用法
- function gameWindow:addLayerEnterAndExitEvent()
- local function onNodeEvent(eventType)
- if eventType == "enter" then
- log("enter")
- elseif eventType == "exit" then
- log("exit")
- end
- end
- config.bottomLayer:registerScriptHandler(onNodeEvent)
- end
registerScriptHandler 注册键盘事件
- function cocoEvent.addKeyboardEvent()
- local function keyboardPressed(keyCode, event)
- if keyCode == 23 then
- log("left")
- elseif keyCode == 24 then
- log("right")
- elseif keyCode == 25 then
- log("up")
- elseif keyCode == 26 then
- log("down")
- end
- --log("keyCode = "..tostring(keyCode))
- --log("event = "..tostring(event))
- end
- local function keyboardReleased(keyCode, event)
- --log("keyCode = "..tostring(keyCode))
- --log("event = "..tostring(event))
- end
- local listener = cc.EventListenerKeyboard:create()
- listener:registerScriptHandler(keyboardPressed, cc.Handler.EVENT_KEYBOARD_PRESSED)
- listener:registerScriptHandler(keyboardReleased, cc.Handler.EVENT_KEYBOARD_RELEASED)
- local eventDispatcher = config.bottomLayer:getEventDispatcher()
- eventDispatcher:addEventListenerWithSceneGraphPriority(listener, config.bottomLayer)
- end
posted on 2018-03-27 10:59 echo111333 阅读(501) 评论(0) 编辑 收藏 举报