如何使用Corona SDK有效处理对象的删除?

时间:2013-10-14 17:01:46

标签: lua corona

我有一个按钮,每次触摸按钮时都会创建并施加力。 如何防止这种内存泄漏?

我正在使用导演班来改变场景。 这是代码:

-- Fire the rocket from the jet position
local function fireTheRocket(event)
    if event.phase == "ended" then
      local fireBall = display.newImage( "rocket.png")
      fireBall.x = jet.x; 
      fireBall.y = jet.y; 

      GUI:insert(fireBall);

      physics.addBody(fireBall, "dynamic")
      fireBall:applyForce( 1000, 0, fireBall.x, fireBall.y )
    end
end
fireBtn:addEventListener("touch", fireTheRocket)

1 个答案:

答案 0 :(得分:0)

您可以尝试做类似的事情: (在播放一个部队后插入)

local function DestroyRocket()
  fireBall:removeSelf()
  fireball = nil
end
timer.performWithDelay( 1000, DestroyRocket)

1秒后摧毁你的火箭。或者你可以在onCollision中进行,如果你想在与其他一些物体碰撞时将其销毁。