码迷,mamicode.com
首页 > 其他好文 > 详细

quick-x 触摸事件的新方法

时间:2014-07-16 22:54:47      阅读:193      评论:0      收藏:0      [点我收藏+]

标签:io   cti   re   c   new   ar   

--[[ local function onTouch(event, x, y) print(event, x, y) if event == "began" then return true -- 在 began 事件里返回 true,表示要接收后续的触摸事件 end end

    local layer = display.newLayer()
    layer:addTouchEventListener(onTouch)
    layer:setTouchEnabled(true) -- 注册后还必须启用触摸

    rect:addChild(layer) -- 还要将 CCLayer 对象加入场景或其他显示对象中

]]

以上是qx的旧的写法。

而新的2.3.3的写法则是:

   rect:setTouchMode(cc.TOUCH_MODE_ONE_BY_ONE) -- 单点触摸
    rect:setTouchEnabled(true)
    rect:setTouchCaptureEnabled(true)
    rect:setTouchSwallowEnabled(true)

    -- 添加触摸事件处理函数
    rect:addNodeEventListener(cc.NODE_TOUCH_EVENT, function(event)
        -- event.phase 的值是:
        -- cc.NODE_TOUCH_TARGETING_PHASE

        -- event.mode 的值是下列之一:
        -- cc.TOUCH_MODE_ONE_BY_ONE 单点触摸
        -- cc.TOUCH_MODE_ALL_AT_ONCE 多点触摸

        -- event.name 的值是下列之一:
        -- began 触摸开始
        -- moved 触摸点移动
        -- ended 触摸结束
        -- cancelled 触摸被取消

        -- 如果是单点触摸:
        -- event.x, event.y 是触摸点位置
        -- event.prevX, event.prevY 是触摸点之前的位置

        -- 如果是多点触摸:
        -- event.points 包含了所有触摸点的信息
        -- event.points = {point, point, ...}
        -- 每一个触摸点的值包含:
        -- point.x, point.y 触摸点的当前位置
        -- point.prevX, point.prevY 触摸点之前的位置
        -- point.id 触摸点 id,用于确定触摸点的变化

        if event.name == "began" then
            -- 在单点触摸模式下:在触摸事件开始时,必须返回 true
            -- 返回 true 表示响应本次触摸事件,并且接收后续状态更新
            print("new element")
            return true
        end
    end)

quick-x 触摸事件的新方法,布布扣,bubuko.com

quick-x 触摸事件的新方法

标签:io   cti   re   c   new   ar   

原文地址:http://www.cnblogs.com/skiy/p/3835458.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!