你的编码环境是什么?您指的是客户的数据库和闪存加载时间缓慢,这不应该真正相关。Flash 从数据库中加载哪些数据?
让您的 XML 尽快加载的一种方法是使用某种形式的预加载器影片。这部电影有两个功能:
- 1 加载 XML 数据
- 2 加载 MainMovie
这第一部电影将很快加载,因为您可以将图形资源保持在最低限度,即一个简单的进度条/消息,通知用户主 swf 正在加载。
在加载主影片时,您应该已经检索并解析了 XML 数据,以便可以将结果数据分配给加载的 SWF。
这是一个精简版:
//Preloader
private var menuData:Object;
public function Preloader()
{
loadXMLData();
loadMainMovie();
}
private function loadXMLData():void
{
var loader:URLLoader = new URLLoader(); //etc...
}
private function xmlLoaded( event:Event ):void
{
menuData = parseXMLData( event.target.data );
//remove listener
}
private function loadMovieComplete(event:Event ):void
{
var main:MovieClip = event.currentTarget.content as MainClass;
if( menuData != null )
{
main.menuData = menuData;
addChild( main );
}else{
//if your XML takes more time to load than your MainMovie
//you may have to reconsider your options!
//in any case you could add a listener here
//to check when the xml load is complete
}
//remove listener
}