zoukankan      html  css  js  c++  java
  • lua注册事件函数

    registerScriptTouchHandler             注册触屏事件

    registerScriptTapHandler                  注册点击事件

    registerScriptHandler                         注册基本事件 包括 触屏 层的进入 退出 事件

    registerScriptKeypadHandler           注册键盘事件

    registerScriptAccelerateHandler      注册加速事件

    registerScriptTouchHandler 详解(可以设置单点或多点)

    1. function gameWindow:addLayerTouchEventMethod1()  
    2.     local function onTouchEvent(eventType, x, y)  
    3.         --log("eventType = "..tostring(eventType))  
    4.         if eventType == "began" then   
    5.             --需要返回true  
    6.             return onTouchBegan(touch, event)  
    7.         elseif eventType == "moved" then   
    8.             onTouchMoved(touch, event)  
    9.         elseif eventType == "ended" then   
    10.             onTouchEnded(touch, event)  
    11.         end  
    12.     end  
    13.     config.bottomLayer:setTouchEnabled(true)  
    14.     config.bottomLayer:registerScriptTouchHandler(onTouchEvent)  
    15. end  


    registerScriptTapHandler                  注册点击事件

    1. function gameWindow:addBtn()  
    2.     local btn = cc.MenuItemImage:create("white.png", "black.png", "black.png")  
    3.     btn:setPosition(320, 160)  
    4.     local function btnClick()  
    5.         log("btnClick")  
    6.     end  
    7.     btn:registerScriptTapHandler(btnClick)  
    8.   
    9.     local menu = cc.Menu:create()  
    10.     config.bottomLayer:addChild(menu)  
    11.     menu:setPosition(cc.p(0,0))  
    12.   
    13.     menu:addChild(btn)  
    14. end  


    registerScriptHandler                         注册基本事件

    注册触屏事件用法

    1. function gameWindow:addLayerTouchEventMethod2()  
    2.     --创建一个单点触屏事件  
    3.     local listener = cc.EventListenerTouchOneByOne:create()  
    4.     --注册触屏开始事件  
    5.     listener:registerScriptHandler(onTouchBegan, cc.Handler.EVENT_TOUCH_BEGAN)  
    6.     --注册触屏移动事件  
    7.     listener:registerScriptHandler(onTouchMoved, cc.Handler.EVENT_TOUCH_MOVED)  
    8.     --注册触屏结束事件  
    9.     listener:registerScriptHandler(onTouchEnded, cc.Handler.EVENT_TOUCH_ENDED)  
    10.     --获取层的事件派发器  
    11.     local eventDispatcher = config.bottomLayer:getEventDispatcher()  
    12.     --事件派发器 注册一个node事件  
    13.     eventDispatcher:addEventListenerWithSceneGraphPriority(listener, config.bottomLayer)  
    14. end  




    注册layer的 进入 退出事件用法

    1. function gameWindow:addLayerEnterAndExitEvent()  
    2.     local function onNodeEvent(eventType)  
    3.         if eventType == "enter" then  
    4.             log("enter")  
    5.         elseif eventType == "exit" then  
    6.             log("exit")  
    7.         end  
    8.     end  
    9.     config.bottomLayer:registerScriptHandler(onNodeEvent)  
    10. end  


    registerScriptHandler 注册键盘事件

      1. function cocoEvent.addKeyboardEvent()  
      2.     local function keyboardPressed(keyCode, event)  
      3.         if keyCode == 23 then  
      4.             log("left")  
      5.         elseif keyCode == 24 then  
      6.             log("right")  
      7.         elseif keyCode == 25 then  
      8.             log("up")  
      9.         elseif keyCode == 26 then  
      10.             log("down")  
      11.         end  
      12.         --log("keyCode = "..tostring(keyCode))  
      13.         --log("event = "..tostring(event))  
      14.     end  
      15.   
      16.     local function keyboardReleased(keyCode, event)  
      17.         --log("keyCode = "..tostring(keyCode))  
      18.         --log("event = "..tostring(event))  
      19.     end  
      20.     local listener = cc.EventListenerKeyboard:create()  
      21.     listener:registerScriptHandler(keyboardPressed, cc.Handler.EVENT_KEYBOARD_PRESSED)  
      22.     listener:registerScriptHandler(keyboardReleased, cc.Handler.EVENT_KEYBOARD_RELEASED)  
      23.     local eventDispatcher = config.bottomLayer:getEventDispatcher()  
      24.     eventDispatcher:addEventListenerWithSceneGraphPriority(listener, config.bottomLayer)  
      25. end 
  • 相关阅读:
    图片的下方与父元素有间隙兼容性解决方案
    vscode 实用插件
    给网页title前面上图标
    网站换肤
    基于面向对象编程的设计模式
    点击获取验证码进行60秒倒计时
    JVM--内存模型与线程
    JVM学习--jvm监控和故障处理工具
    JVM--GC学习
    JVM--Java类加载机制
  • 原文地址:https://www.cnblogs.com/aibox222/p/8656323.html
Copyright © 2011-2022 走看看