Lua EventListener为订阅的每个图像而不是仅为一个图像启动?

Lua EventListener为订阅的每个图像而不是仅为一个图像启动?,lua,coronasdk,Lua,Coronasdk,我动态地创建图像并为它们分配一个事件侦听器,当我点击图像时,所有图像的事件都会触发,而不仅仅是我点击的图像 我希望它只发射一次那么我错在哪里了 math.randomseed(os.time()) for i = 1,20 do addImage(i) end function addImage(index) local image = display.newImage("image.png", 10, 10) image:addEventListener('t

我动态地创建图像并为它们分配一个事件侦听器,当我点击图像时,所有图像的事件都会触发,而不仅仅是我点击的图像

我希望它只发射一次那么我错在哪里了

  math.randomseed(os.time())

  for i = 1,20 do
    addImage(i)
  end

function addImage(index)

  local image = display.newImage("image.png", 10, 10)
  image:addEventListener('tap', action)

end

function action(event)

  local image = event.target

end

看起来您正在将一个图像放置在其他图像的顶部,因此当您点击顶部图像时,实际上是在点击所有图像。 然后依次调用“Tap”侦听器。 在corona中,为了阻止事件渗透,侦听器必须返回“true”

您可以在此处阅读更多内容:

太棒了,谢谢,我稍后会尝试一下,如果正确的话,我会做标记。
function action(event)
    local image = event.target
    ...
    return true --prevent propagation to underlying tap objects
end