Lua 在网格中均匀生成多个图像

Lua 在网格中均匀生成多个图像,lua,coronasdk,Lua,Coronasdk,我有40个对象放置在5x8网格样式中。对象的图像是50x50。我用于繁殖的代码如下所示: local spawnImage=function(x,y) circle[bCircle] = display.newImage( "dot1.png" ) circle[bCircle].x =-5+x*55 circle[bCircle].y = 60+y*55 sceneGroup:insert(circle[bCircle]) circle[bCircle]

我有40个对象放置在5x8网格样式中。对象的图像是50x50。我用于繁殖的代码如下所示:

local spawnImage=function(x,y)
    circle[bCircle] = display.newImage( "dot1.png" )
    circle[bCircle].x =-5+x*55
    circle[bCircle].y = 60+y*55
    sceneGroup:insert(circle[bCircle])
    circle[bCircle].value = bCircle 
    circle[bCircle].tag=false
    numCircle[bCircle]= display.newText(  circle[bCircle].value, spX+x*55, spY+y*55, "Helsinki", 16 )
    circle[bCircle]:addEventListener( "touch", touchi )
    bCircle = bCircle + 1
end

    for y=1,8 do
       for x=1,5 do
         spawnImage(x,y)
       end
     end
问题是我不能将它们均匀地放置在不同的设备中(模拟器)

ipad

iphone6

iPhone5

有什么帮助吗?如何将对象均匀地放置在不同的设备中?有什么想法吗?有什么帮助吗


谢谢

您没有考虑显示器分辨率,这很可能与所有设备的分辨率不同。当您使用固定的偏移和大小时,会得到不同的结果

如果为项目定义内容属性,Corona可以为您处理缩放


您没有考虑显示器分辨率,这很可能与所有设备的分辨率不同。当您使用固定的偏移和大小时,会得到不同的结果

如果为项目定义内容属性,Corona可以为您处理缩放


在代码开头使用此选项,然后使用_W和_H作为屏幕宽度和高度:

_W= display.contentCenterX
_H= display.contentCenterY
因此,您的代码将是:

    _W= display.contentCenterX
    _H= display.contentCenterY

local spawnImage=function(x,y)
    circle[bCircle] = display.newImage( "dot1.png" )
    circle[bCircle].x = x* (1/5)*_W
    circle[bCircle].y = y* (1/8)*_H
    sceneGroup:insert(circle[bCircle])
    circle[bCircle].value = bCircle 
    circle[bCircle].tag=false
    numCircle[bCircle]= display.newText(  circle[bCircle].value, spX+x*55, spY+y*55, "Helsinki", 16 )
    circle[bCircle]:addEventListener( "touch", touchi )
    bCircle = bCircle + 1
end

    for y=1,8 do
       for x=1,5 do
         spawnImage(x,y)
       end
     end

在代码开头使用此选项,然后使用_W和_H作为屏幕宽度和高度:

_W= display.contentCenterX
_H= display.contentCenterY
因此,您的代码将是:

    _W= display.contentCenterX
    _H= display.contentCenterY

local spawnImage=function(x,y)
    circle[bCircle] = display.newImage( "dot1.png" )
    circle[bCircle].x = x* (1/5)*_W
    circle[bCircle].y = y* (1/8)*_H
    sceneGroup:insert(circle[bCircle])
    circle[bCircle].value = bCircle 
    circle[bCircle].tag=false
    numCircle[bCircle]= display.newText(  circle[bCircle].value, spX+x*55, spY+y*55, "Helsinki", 16 )
    circle[bCircle]:addEventListener( "touch", touchi )
    bCircle = bCircle + 1
end

    for y=1,8 do
       for x=1,5 do
         spawnImage(x,y)
       end
     end