0

我正在尝试为我在屏幕中创建的每个球添加 eventListener。我用 for 循环创建球,然后将它们分配给一个数组。到目前为止效果很好。但是,当我尝试为循环中的每个球添加 eventListener 时,它给了我相位 nil 值错误。你能帮我弄清楚吗?谢谢

这是我的代码:

function ballListener(event)
    if(phase.event=="ended") then
        target.event.isvisible=false
    end
end


for i=1,10,1 do
    a=display.newImage("ball.jpg")
    a.x=math.random(10,200)
    a.y=math.random(10,200)
    a:addEventListener("touch",ballListener)
    table.insert(balls,a)
end
4

1 回答 1

1

首先,ballListener 函数中的某些内容是倒退的。它应该是“event.phase”和“event.target”,因为“phase”和“target”是事件的属性。isvisible 也应该是 isVisible。最终结果应如下所示:

function ballListener(event)
   if(event.phase=="ended") then
      event.target.isVisible=false
   end
end

我还没有测试过代码,所以可能还有其他我错过的问题。

查看Corona API

于 2012-06-22T16:08:05.253 回答