Lua 当屏幕方向改变时,如何控制电晕中的屏幕对齐?

Lua 当屏幕方向改变时,如何控制电晕中的屏幕对齐?,lua,coronasdk,Lua,Coronasdk,我已经设置了我的config.lua,使我的内容区域位于屏幕的顶部,并设置了内容区域的尺寸,使其只填充iPhone4屏幕,但在iPhone5屏幕的底部留下了一个间隙 application = { content = { width = 640, height = 960, scale = "letterbox", xAlign = "center", yAlign = "top",

我已经设置了我的config.lua,使我的内容区域位于屏幕的顶部,并设置了内容区域的尺寸,使其只填充iPhone4屏幕,但在iPhone5屏幕的底部留下了一个间隙

application = 
{
    content = 
    {
        width = 640,
        height = 960,
        scale = "letterbox",
        xAlign = "center",
        yAlign = "top",     
    }
}
这在纵向模式下很好,但当手机旋转到横向时,内容现在显示为左对齐,而不是中心对齐-就好像Corona没有改变屏幕旋转时“xAlign”和“yAlign”的含义一样

当屏幕旋转时,是否有任何方法可以通过编程更改xAlign和yAlign值?或者更好的是,是否有一种配置可以使电晕手柄屏幕旋转和对齐更加合理

我知道我可以通过将我正在吸引的群体向右移动一点来获得我想要的效果,但我想找到一个不是黑客的答案

请参见下面的图片,了解我正在谈论的内容:

这是主要的问题。卢阿:

local myGroup

local function drawScreen()
    myGroup = display.newGroup( )

    local top = 0
    local left = 0
    local bottom = display.contentHeight
    local right = display.contentWidth

    local r2 = display.newRect( left, top, right, bottom )
    r2:setFillColor(0.4, 0.4, 0.4)
    r2.anchorX = 0
    r2.anchorY = 0
    myGroup:insert(r2)
end

local function clearScreen()
    if (myGroup ~= null) then
        myGroup:removeSelf()
    end
    myGroup = nil
end

local function onOrientationChange( event )
    clearScreen()
    drawScreen()
end

-- and we're running

Runtime:addEventListener( "orientation", onOrientationChange ) 

-- hide status bar
display.setStatusBar( display.HiddenStatusBar )

drawScreen()

好的,我找到了解决办法。有时使用电晕和信箱缩放真的很有趣

build.settings
中,我确保将此设置用于方向:

orientation = {
    default = "portrait",
    supported = { "portrait", "landscapeLeft", "landscapeRight"}
},  
在主文件中,我改为:
r2.anchorX=0.5
并切换到
local left=display.actualContentWidth/2

这似乎成功了。我无法让
xAlign
yAlign
做任何事情。我换了它们,但从未看到结果


所以我会玩弄我贴的东西。信箱会让人觉得很奇怪。我不知道为什么在风景中那个盒子一直向左推。两边应该有相等的黑条。但出于某种原因,没有。让我知道这是否让你走上了正确的道路

你能发布创建那个灰色方框的代码吗?我很好奇这是否与xAlign或Box锚定点有关。当然,这是非常基本的。见上面。谢谢你拨弄。我发现,只要在手机处于一种横向模式时,将我所吸引的人群向右移动,就可以获得最佳的整体效果——这很简单。但我真的希望它能正常运行。我们可以使用actualContentHeight和actualContentWidth,因为它们提供了实际的设备全宽。如果没有实际数据,他们只会返回信箱区域的宽度(没有侧边栏)。祝你好运