Apache flex 在加载其他外部文件之前,Flex预加载程序必须可见
我有一个Flex应用程序,它从数据库加载一些数据。在此期间,我希望我的自定义预加载保持可见 困境是:当我延迟Apache flex 在加载其他外部文件之前,Flex预加载程序必须可见,apache-flex,preloader,Apache Flex,Preloader,我有一个Flex应用程序,它从数据库加载一些数据。在此期间,我希望我的自定义预加载保持可见 困境是:当我延迟FlexEvent.INIT_COMPLETE处理程序中的dispatchEvent(new Event(Event.COMPLETE))时,加载将永远不会发生,因为没有输入下一帧 如何保持加载程序运行,直到所有数据都加载完毕?预加载程序基本上是一个精灵。所有flex组件都扩展了精灵,因此您可以非常轻松地继续使用精灵。我不确定覆盖应用程序框架中删除预加载精灵的部分有多困难。。不过,我想你可
FlexEvent.INIT_COMPLETE
处理程序中的dispatchEvent(new Event(Event.COMPLETE))
时,加载将永远不会发生,因为没有输入下一帧
如何保持加载程序运行,直到所有数据都加载完毕?预加载程序基本上是一个精灵。所有flex组件都扩展了精灵,因此您可以非常轻松地继续使用精灵。我不确定覆盖应用程序框架中删除预加载精灵的部分有多困难。。不过,我想你可以把精灵放回舞台上。。。使用自定义组件 您可能需要创建一个UIComponent并添加预加载程序组件,以便将其与状态一起使用。然后将新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"/>
现在,当您完成更改应用程序的当前状态,使其脱离预加载状态。您可能需要重写UIComponent中的其他一些方法,以使其正常工作