我目前正在通过Adobe将一个Flash游戏移植到OUYA (一个Android驱动设备)上。
大部分工作已经完成;它已经打包并运行在Android设备上。
不过!它被卡在屏幕上的一个小角落里,就像从这张照片上可以看到一样
我想要的是游戏缩放到屏幕的全部大小,同时保持高宽比。我见过其他从Flash到Air到Android的游戏,所以我知道这是可能的,我只是不知道怎么做。
有人有什么建议吗?谢谢!
发布于 2013-10-10 04:10:57
阅读stage.scaleMode:
US/FlashPlatform/reference/actionscript/3/flash/display/Stage.html#scaleMode
这正是你所需要的。
保持高宽比的另一种选择是,如果您有一个包含所有内容的父容器,则将其缩放以适合您自己:
var widthRatio:Number = stage.stageWidth / BASE_WIDTH;
var heightRatio:Number = stage.stageHeight / BASE_HEIGHT;
if (widthRatio < heightRatio)
{
container.scaleX = container.scaleY = widthRatio;
}
else
{
container.scaleX = container.scaleY = heightRatio;
}在这一点上,您可以将容器集中到舞台上:
container.x = (stage.stageWidth - container.width) /2;
container.y = (stage.stageHeight - container.height) / 2;或者用它做别的事。
发布于 2013-10-15 13:15:47
实际上,我所需要的就是这两行代码:
stage.scaleMode = StageScaleMode.SHOW_ALL;
stage.align = "";https://stackoverflow.com/questions/19286862
复制相似问题