У меня была та же проблема, но ни одна из других решений не помогла. Ниже приведен код, который создает проблему для меня:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" applicationComplete="applicationComplete();">
<mx:Script><![CDATA[
import mx.controls.ProgressBar;
import mx.managers.PopUpManager;
private function applicationComplete():void
{
var progressBar:ProgressBar = new ProgressBar()
progressBar.indeterminate = true;
PopUpManager.addPopUp(progressBar, this, true);
//this.addChild(progressBar); including this line overrides the popup
//progressBar.setProgress(0, 0); including this line makes no difference
}
]]></mx:Script>
<mx:Label text="hello"/>
</mx:Application>
Две закомментированы линии, что я понял, что другие предлагаемые решения. Мне удалось исправить это с помощью неудобный обходной путь ниже:
Шаг 1: Создание пользовательских MXML компонент, сохраненный в Progress.mxml
<?xml version="1.0" encoding="utf-8"?>
<mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:ProgressBar indeterminate="true" />
</mx:TitleWindow>
Шаг 2: Использовать пользовательский компонент в коде
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" applicationComplete="applicationComplete();">
<mx:Script><![CDATA[
import mx.controls.ProgressBar;
import mx.managers.PopUpManager;
import Progress;
private function applicationComplete():void
{
var progress:Progress = new Progress();
PopUpManager.addPopUp(progress, this, true);
PopUpManager.centerPopUp(progress);
}
]]></mx:Script>
<mx:Label text="hello"/>
</mx:Application>
Похоже, что включение ProgressBar в TitleWindow важно.
Странно - не могли бы вы оставить немного кода, может быть? Может быть, легче сказать, что происходит. –