我有一个相当大的问题。我希望这是由于我自己的愚蠢而不是某种错误。我有需要知道屏幕尺寸的代码。我还没有找到可靠的方法来做到这一点。在 iPad 2 和 iPhone4/iPod Touch 4 iOS 设备上使用 Flash Builder 4.5 的生产版本。一般来说,我的应用程序运行良好,但我无法在程序启动时确定屏幕大小和方向。让我解释一下我遇到的问题:
在进入由 ADDED_TO_STAGE 事件调用的“init”函数时,stage.stageHeight 和 stage.stageWidth 的值都是 0。
我可以查询 Capabilities.screenResolutionX 和 Capabilities.screenResolutionY,但它们是错误的。它们具有原始 X 和 Y 值,但与方向无关。因此,例如,我通过 screenResolutionX 以横向模式开始包含 768(或其他)而不是 1024。
我查看了 stage.width 和 stage.height 的值,它们没有有效值。
我为 EVENT.RESIZE 设置了 onResize 函数,但如果应用程序在已经处于横向模式时从设备启动,则不会调用它。如果我以纵向模式启动应用程序然后旋转,这会被调用。
所以我的问题是我应该在应用程序启动时查询什么来了解应用程序的实际宽度和高度。必须有办法做到这一点,但显然不使用上述任何方法!
顺便说一句,这是在 iOS 设备上。我不能说它对其他人有何影响。我已经通过打印结果和在调试器中运行它来确认这些结果。