air android app始终以纵向模式启动,而不管Android设备的持有方式(风景/肖像)

时间:2011-01-25 10:21:02

标签: android flash actionscript-3 actionscript air

我有一个AIR android应用程序,我在Android设备(三星TAB)上运行。 我希望应用程序在横向模式下布局,当用户启动应用程序将设备保持在横向状态时(与纵向相同)。

但AIR应用程序始终以纵向模式启动,而不管设备的保持方式如何。

我尝试了以下方法 -

  1. 使用stage.deviceorientation(但应用程序启动时(在applicationComplete通知之后)值为UNKNOWN)

  2. 使用舞台调整大小事件。 (这在开始时触发,不需要手动调整大小 - 值虽然基于纵向模式 - 宽度为600,高度为1024(应该是其他方式))

  3. 当我尝试更改设备的方向时,我得到正确的值,仅在启动时我看到所需值的问题。

    你可以就这个问题提出建议吗?

    感谢

3 个答案:

答案 0 :(得分:0)

使用getResources().getConfiguration().orientation

Link here

if(myCurrentActivity.getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT) 
{
    // code to do for Portrait Mode
} else {
    // code to do for Landscape Mode         
}

答案 1 :(得分:0)

即使我没有答案......我只是想指出...... Nguyen的回答完全无关......这个问题是关于AIR,而不是原生的Android开发

虽然......你可能想要调查stage.orientation而不是stage.deviceOrientation

答案 2 :(得分:0)

在您的应用程序激活处理程序中尝试此操作:

NativeApplication.nativeApplication.addEventListener(flash.events.Event.ACTIVATE, function (e:*):void{

    if(stage.orientation == StageOrientation.UNKNOWN){
        stage.setOrientation(StageOrientation.ROTATED_LEFT);
    }
});