我在清除 LUA 表中的数据时遇到问题。我使用场景插件,一旦玩家进入下一个场景,我想重置表格中的数据。
我使用这个函数来创建游戏元素:
local function createGrips()
    local originX = 0
    local originY = height -75
    for i=0,numberGrips do
        r = math.random(3)
        local x = originX + math.random(width)
        local y = originY - math.random(2*height)
        grip[i] = display.newRect(allElements, x, y, gripSize[r].w, gripSize[r].h)
        grip[i].status = "active"
        grip[i].size = gripSize[r].s
        if (r == 1) then
            grip[i]:setFillColor(51,255,0)
        elseif (r == 2) then
            grip[i]:setFillColor(255,51,51)
        elseif (r == 3) then
            grip[i]:setFillColor(51,51,255)
        end
    end
end 
createGrips()
当我进入下一个场景时,我尝试了所有这些选项来清理桌子:
grip={}
或者这个
for i=#grip,0, -1 do
    table.remove(grip,i)
end
但结果保持不变。元素一直停留在屏幕上。唯一有效的是grip=nil。但这会在我返回函数后立即产生错误createGrips()。
重置所有数据的最佳方法是什么?我正在removeSelf()为所有角色使用该功能。