Tap/Touch 在 Corona SDK 上的 adding/removing 图像上运行

Tap/Touch function on adding/removing images on corona sdk

我正在尝试制作一款类似于 Simon Says 的游戏。我目前正在使用 corona 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)

感谢您的宝贵时间!

您可以在触摸功能中使用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)