使用循环创建具有不同偏移的对象

时间:2016-11-11 00:52:06

标签: for-loop lua corona

这是一个用于创建4个对象的for循环:

for i=1,4 do
    local obj = display.newRect(sceneGroup, 40, 60)
    obj.y = (obj.height + 80) * i
end

此代码创建四个对象,起点为60(obj.height),每个对象之间的间隙为80.

我想要做的是改变起点,但在它们之间保持相同的差距(80),这意味着我希望起点指向250而不是60.我尝试了不同的方法,但无法使其正确。

1 个答案:

答案 0 :(得分:0)

来自Corona documentation关于display.newRect()

  

概述

     

创建一个矩形对象。当地的起源是在中心   矩形和锚点初始化为此本地原点。

     

语法

display.newRect( [parent,] x, y, width, height )

尝试

local x, y = display.contentWidth * 0.5, 250-- decide where to put first rectangle 
local obj = {} -- reference for futher use 

for i=1, 4 do
    obj[i] = display.newRect(x, y, 40, 60)
    y = y + obj[i].height + 80
end