我使用Corona SDK创建Android / iOS应用。我试图在函数中传递两个不同的参数。该函数调用如下:
function onCollision( self, event )
问题是,当调用该函数时,它会返回此错误:attempt to index local "event" a nil value
。我知道为什么,我认为这是因为逗号。但我已经阅读了文档以及您应该如何做到这一点,任何帮助?
答案 0 :(得分:1)
如果你给一个表对象并引用你的函数作为表的一部分它应该工作:
local object = display.newImage( "object.png" )
physics.addBody( object , { ... } )
local function onCollision( self, event )
...
end
object.collision = onCollision
object:addEventListener( "collision", object)
答案 1 :(得分:0)
你的功能应该是onCollision(事件),不需要自我。
如果您确实想要将另一个参数传递给此函数,可以使用类似的闭包来执行此操作:
local myParam = 1
Runtime:addEventListener ( "collision", function(event)
return onCollision(event, myParam)
end )