Прелоадер - это в основном спрайт. Все гибкие компоненты расширяют спрайты, поэтому вы можете довольно легко продолжать работу со спрайтами. Я не уверен, насколько сложно было бы переопределить ту часть инфраструктуры приложения, которая УДАЛЯЕТ этот спрайт перед загрузчиком ... однако, я думаю, что вы можете добавить спрайт обратно на сцену ... используя пользовательский компонент.
Вы, вероятно, должны создать UIComponent и добавить свой компонент preloader, чтобы вы могли использовать его с состояниями. Затем установите ваш новый UIComponent в состояние по умолчанию.
Ниже приведен код "psuedo" на моей голове.
public class MyFlexPreLoader extends UIComponent{
private var var preloader:YourBasePreLoader; //This is the preloader you're already using
override protected function createChildren(){
//Add the Preloader here!
preloader = new YourBasePreLoader();
addChild(preloader);
}
//Also add event listeners to manipulate your preloader to show the progress of loading stuff from DB
}
Тогда в вашем приложении
<comp:MyFlexPreLoader includeIn="preloading"/>
Теперь, когда вы закончите, измените currentState приложения от предварительной загрузки. Возможно, вам придется переопределить еще несколько методов в UIComponent, чтобы заставить его работать правильно.