Я наконец-то нашел способ уменьшить приложение.На самом деле, приложения дети должны масштабировать.В противном случае width
и height
приложения сжимаются.
Поскольку я использую состояния, мне пришлось добавить обработчик события и для события currentStateChanging
.
private static const MIN_WIDTH:Number = 1250;
private static const MIN_HEIGHT:Number = 800;
protected function application_currentStateChangingHandler():void
{
callLater(scaleElements);
}
protected function application_resizeHandler():void
{
scaleElements();
}
protected function scaleElements():void
{
var newScaleX:Number = 1;
var newScaleY:Number = 1;
if (width < MIN_WIDTH)
newScaleX = width / MIN_WIDTH;
if (height < MIN_HEIGHT)
newScaleY = height / MIN_HEIGHT;
var newScale:Number = Math.min(newScaleX, newScaleY);
for (var i:int = 0; i < numElements; i++)
{
var element:DisplayObject = getElementAt(i) as DisplayObject;
if (element)
{
element.scaleX = newScale;
element.scaleY = newScale;
}
}
}