У меня есть вопрос в Lua (Corona SDK):Удаление строки из массива
У меня есть доски, которые могут рисовать и ясно, но у меня возникли проблемы с моим ясным. Это функция рисования у меня есть:
if(phase == 'moved') then
local xStart, yStart = self.xStartTemp or e.xStart, self.yStartTemp or e.yStart
--add new line
local xEnd, yEnd = e.x, e.y
local line = display.newLine(xStart, yStart, xEnd, yEnd)
-- self:drawCircleStream(e.x, e.y)
self.xStartTemp, self.yStartTemp = xEnd, yEnd
line.strokeWidth = 1
line:setStrokeColor(0,0,0)
self.group:insert(line)
self.line = line
elseif(phase == 'ended') then
--store line in a table
self.xStartTemp, self.yStartTemp = nil, nil
local lineArr = self.lineArr
table.insert(lineArr, self.line)
end
return true
И это ясно (который не работает):
local lineArr = self.lineArr
for i=1,#lineArr do
print(lineArr[i])
table.remove(lineArr[i])
-- lineArr[i]:removeSelf()
end
Код в вопросе предполагает, что таблица представляет собой [последовательность] (http://www.lua.org/manual/5.2/manual.html#3.4.6). Ваш код может сделать таблицу не последовательностью, тем самым создавая результат '#' undefined. –