在电晕sdk上添加/删除图像时点击/触摸功能

时间:2015-07-02 23:39:45

标签: lua corona corona-storyboard

我正在尝试制作一款游戏,类似于Simon Says。我目前正在使用电晕sdk,如果你能帮助我,我将非常感激! 我已经用图像定义了我的box1变量。我试图这样做,当我点击框的图像,另一盒不同的颜色显示在它上面。我想它,所以当我放开鼠标时,出现的盒子就消失了。以下是我的代码的一部分:

local function lightbox(event)
if event.phase == "began" then
    local clickedbox1 = display.newImage("clickedbox.png")
    clickedbox1.x = display.contentWidth/5
    clickedbox1.y = display.contentWidth/2
end
if event.phase == "ended" then
    clickedbox1: removeself()
    clickedbox1 = nil
end
end

-->Add the listener to our boxes
box1:addEventListener("touch", lightbox)

谢谢你的时间!

1 个答案:

答案 0 :(得分:1)

您可以在触摸功能中使用 event.target.x ,以便弹出框将显示在触摸的图像上方。

注意:更改为图片资源提供的图片资源

local popupImage

local onTouchListener = function(event)

    if (event.phase == "began" ) then

        popupImage = display.newImageRect("images/btn_cancel_reset.png", 55,18)
        popupImage.x = event.target.x
        popupImage.y = event.target.y


    elseif(event.phase == "ended" or event.phase == "moved") then
        --ADD EVENT.PHASE == "MOVED" SINCE THE IMAGE WILL NOT BE REMOVED 
        --WHEN YOU TOUCH AND DRAG YOUR MOUSE. YOU CAN REMOVE IT IF YOU WANT

        if (popupImage ~= nil) then

            popupImage:removeSelf()
            popupImage = nil

        end
    end


end


local btnclick = display.newImageRect("images/btn_buy_more_error.png", 126,18)
btnclick.x = display.contentWidth/2
btnclick.y = display.contentHeight/2
btnclick:addEventListener( "touch", onTouchListener)