我在使用Starling Framework的应用程序中工作,但我遇到了一个问题,该应用程序几乎适用于所有类型的设备,但当我尝试将其安装在Galaxy Tab 2中时,会出现一些问题,因为默认方向是横向,因此应用程序看起来完全没有组织。我试图用XML修改它,并添加一个事件来手动进行定向,但它不起作用,所以我需要帮助。
我首先做的是这个
<aspectRatio>portrait</aspectRatio>
<autoOrients>false</autoOrients>
<fullScreen>true</fullScreen>
<visible>true</visible>
在我尝试了这个之后
stage.setOrientation( StageOrientation.UPSIDE_DOWN );
非常感谢!
StageOrientation.UPSIDE_DOWN
与StageOrientation.NORMAL
成180度,因此如果正常是横向的,那么倒置也是倒置的,有些设备不支持这一点。我建议使用高度和宽度来确定绝对方向,而不是相对方向,并对做出反应
if (stage.width > stage.height)//we are in landscape
{
if(stage.orientation == StageOrientation.NORMAL || stage.deviceOrientation == StageOrientation.NORMAL)
{
stage.setOrientation(StageOrientation.ROTATED_LEFT);
}
else
{
stage.setOrientation(StageOrientation.NORMAL);
}
}
此外,值得注意的是,stage.orientation
和stage.deviceOrientation
之间存在差异,您可以在此处更详细地阅读