我已经设置了我的config.lua,以便我的内容区域位于屏幕的顶部,并设置了内容区域的大小,以便它填满iPhone4屏幕,但在底部留下空隙一个iPhone5屏幕。当屏幕方向改变时,如何控制电晕中的屏幕对齐?
application =
{
content =
{
width = 640,
height = 960,
scale = "letterbox",
xAlign = "center",
yAlign = "top",
}
}
这是在纵向模式很好,但是当手机旋转为横向,现在显示的内容左对齐,而不是居中对齐 - 仿佛电晕不改变的是什么“xAlign”理念, “yAlign”是指屏幕旋转时的意思。
有没有什么办法可以在屏幕旋转时以编程方式更改xAlign和yAlign值?或者更好的是,有没有一种配置可以让Corona更合理地处理屏幕旋转和对齐?
我知道我可以通过将我正在绘制的组移动到右侧来获得相同的效果,但是我想找到一个不是黑客的答案。
请参阅以下就是我在谈论的一个画面:
这里的main.lua:
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()
你可以发布创建灰色框的代码吗?我很好奇,如果这与xAlign或框定位点有关。 – Fernker
当然 - 这很基本。往上看。 – teapot7