在Corona SDK中手动结束或取消触摸阶段?

有没有可能手动取消或结束物体上的触摸相位? 我基本上想让用户无法拖动物体,除非他们把手指从屏幕上拿开并重新开始拖动。这可能吗?

点赞
用户1979583
用户1979583
local isDragAllowed = 0  -- 创建一个标志或变量

local bg = display.newRect(0,0,display.contentWidth,display.contentHeight) -- 背景

local myObject = display.newImageRect("Icon.png", 50, 50); -- 你的物体
myObject.x = 160
myObject.y = 240

local function touchHandler(event)
    if(event.phase=="began")then
        isDragAllowed = 1
    elseif(event.phase=="moved" and isDragAllowed==1)then
        -- 只有在标志为 true 或 1 时才会移动物体
        myObject.x = event.x
        myObject.y = event.y
    else
        isDragAllowed = 0 -- 在触摸结束时重置标志
    end
    return true;
end
myObject:addEventListener("touch",touchHandler)

local function bgTouchHandler(event)
    print(event.phase)
    isDragAllowed = 0 -- 如果在背景上拖动/触摸,重置标志
    return true;
end
bg:addEventListener("touch",bgTouchHandler)
2013-11-05 04:54:22