我需要在后台加载图像时做一个简单的进度指示器。我使用的flash.display.Loader类似乎是标准的方式。问题是,即使我可以看到flash.display.LoaderInfo使用跟踪以固定的时间间隔触发ProgressEvent.PROGRESS,但动态更新的文本(或任何其他图形对象)只会在加载完成时更新一次。它看起来像是显示更新排队并在最后只引发一次更新。这是启动加载功能的简化版本:使用flash的进度指示器display.display.Loader
public function init()
{
var loader : Loader = new Loader();
var request : URLRequest = new URLRequest(this.imageSrc);
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, imageLoaded);
loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, updateProgress);
loader.load(request);
}
,这是事件处理程序:
private function updateProgress(event : ProgressEvent) : void
{
progressIndicator.text = event.bytesLoaded + "/" + event.bytesTotal;
trace(event.bytesLoaded + "/" + event.bytesTotal);
}
我的可能是一个基本的问题道歉。我不经常使用Flash。但在我看来,我正在做一个明智而直观的事情。它必须是101闪存陷阱。
非常感谢您的努力和时间。我想我已经想出了问题所在。我要发布一个答案。 – 2009-06-13 14:05:55