阵列中的图像,没有正确间距

时间:2011-09-05 00:07:40

标签: arrays image lua spacing lua-table

形状位于图像的顶部。

http://picturepush.com/public/6472916

代码如下所示:

    local xOffset = 0

    for i = 1, levelPacks[prevCurrentLevelPack][prevCurrentLevel].ammount do

        if i == 1 then --setup first one

            shapesPrevArray[i].x = 30
            shapesPrevArray[i].y = 41
            shapesPrevArray[i].isVisible = true

        end

        if i > 1 then --setup the rest

            --width of previous one plus the x value of the previous one to make them next to eachother.
            xOffset = shapesPrevArray[i - 1].width + shapesPrevArray[i - 1].x
            print("i:" .. i .. " width:" .. shapesPrevArray[i - 1].width .. " x value:" .. shapesPrevArray[i - 1].x .." xoffset:" .. xOffset)
            shapesPrevArray[i].x = xOffset    
            shapesPrevArray[i].y = 41
            shapesPrevArray[i].isVisible = true
            xOffset = 0

        end

    end

我试图将阵列中的所有图像与每个图像之间的相同空间隔开。阵列中的图像具有不同的宽度。 .x值位于形状的左上角。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

根据评论,每个形状的width实际上是它的两倍。所以你需要做的是将所有宽度加起来并将总和除以2;这为您提供了形状所需的总宽度。从你想要占用的屏幕上的总宽度中减去它;这为您提供了可用空间。然后将其除以形状数减1;这为你提供了添加到每个形状右侧的空间量(大约,因为它可能不会完全分开;只是向下舍入)。因此,每个形状的偏移量是前一个形状的偏移量加上其宽度的一半加上我们刚刚计算的值。我不认识Lua所以我会把编码留给你。