У меня довольно большая проблема. Я надеюсь, что это из-за моей собственной глупости, а не какой-то ошибки. У меня есть код, который должен знать размеры экрана. Я не нашел надежного способа сделать это. Использование производственной версии Flash Builder 4.5 на устройствах iOS iPad 2 и iPhone4 / iPod Touch 4. В целом, мое приложение работает отлично, но я не могу определить размер экрана и ориентацию во время запуска программы. Позвольте мне объяснить, какие у меня проблемы:
При входе в функцию init, вызываемую событием ADDED_TO_STAGE, значения stage.stageHeight и stage.stageWidth равны 0.
Я могу запросить Capabilities.screenResolutionX и Capabilities.screenResolutionY, но они НЕПРАВИЛЬНЫ. Они имеют необработанные значения X и Y, но независимо от ориентации. Так, например, я запускаю в альбомном режиме, screenResolutionX содержит 768 (или что-то еще) вместо 1024.
Я смотрю на значения stage.width и stage.height, и у них нет действительных значений.
У меня есть настройка функции onResize для EVENT.RESIZE, но она не вызывается, если приложение запускается с устройства, когда оно уже находится в ландшафтном режиме. Если я запускаю приложение в портретном режиме, а затем поворачиваюсь, это вызывается.
Таким образом, мой вопрос заключается в том, что я должен сделать запрос прямо при запуске приложения, чтобы узнать реальную ширину и высоту приложения. Должен быть способ сделать это, но, очевидно, не использовать ни один из методов выше!
Кстати, это на устройствах iOS. Я не могу сказать, как это работает на других. Я подтвердил эти результаты, распечатав их и запустив в отладчике.