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
谢谢!我已经看了这么久了,我看不到简单的解决方案谢谢!我已经看了这么久,我看不出简单的解决方案