Lua 如何使用表元素

Lua 如何使用表元素,lua,coronasdk,lua-table,Lua,Coronasdk,Lua Table,我将电影标题显示为字母图像,例如,每个字母都有一个单独的图像。然后可以将每个字母拖到空间/容器中。这是我用来显示容器的代码 posX = {} posY = 124 px = 10 containers = {} for i = 1, #letters do if(letters[i]==" ") then px = px + 10 -- print(posX[i]) -- table.remove(posX, posX[i]) e

我将电影标题显示为字母图像,例如,每个字母都有一个单独的图像。然后可以将每个字母拖到空间/容器中。这是我用来显示容器的代码

posX = {}
posY = 124
px = 10
containers = {}
for i = 1, #letters do
    if(letters[i]==" ") then
        px = px + 10
        -- print(posX[i])
        -- table.remove(posX, posX[i])
    else
    posX[i] = px
    containers[i] = display.newImage( "Round1_blue_tileEnlarged 40x40.png",      posX[i],posY )
    px = px + 40
    end
end

正如你所看到的,我正在检查一个空格,例如如果蝙蝠侠的开头是标题,如果标题是一个单词,我没有问题,但是添加空格是向我的数组中添加另一个元素,这会导致我在容器中放置对象时出错。你可以在“if”中看到,我只是在添加一个空格,但我不想让它成为我表posX的一个元素,我不确定我是否理解你的问题,但如果我理解了,这就是你的问题:你正在使用
I
作为
posX
中的索引,但是
I
即使对于空格也是由for循环递增的。这会导致
posX
容器
表中出现漏洞

您可以通过多种方式解决此问题,这里有一个简单的方法:

posX = {}
posY = 124
px = 10
containers = {}
local j = 1
for i = 1,#letters do
    if(letters[i]==" ") then
        px = px + 10
    else
        posX[j] = px
        containers[j] = display.newImage( "Round1_blue_tileEnlarged 40x40.png", posX[j],posY )
        px = px + 40
        j = j + 1
    end
end

您也可以使用
#posX
而不是
j
我不确定我是否理解您的问题,但如果我理解了,这就是您的问题:您使用
I
作为
posX
中的索引,但是
I
即使对于空格也是由for循环递增的。这会导致
posX
容器
表中出现漏洞

您可以通过多种方式解决此问题,这里有一个简单的方法:

posX = {}
posY = 124
px = 10
containers = {}
local j = 1
for i = 1,#letters do
    if(letters[i]==" ") then
        px = px + 10
    else
        posX[j] = px
        containers[j] = display.newImage( "Round1_blue_tileEnlarged 40x40.png", posX[j],posY )
        px = px + 40
        j = j + 1
    end
end

您也可以使用
#posX
而不是
j

谢谢!我已经看了这么久了,我看不到简单的解决方案谢谢!我已经看了这么久,我看不出简单的解决方案