1

是否可以在 as3 预加载器中设置总字节数?我不确定它是否正确,但为了避免无限循环,我已经这样做了。

var loadper:Number=0;
var total_bytes:Number = 3484484;
loaderInfo.addEventListener(ProgressEvent.PROGRESS, loader);

function loader(filename:ProgressEvent) { 
   var loaded_bytes:Number = stage.loaderInfo.bytesLoaded;
   _txt.text=String(loadper+"%");
   if(loadper>=100) { 
      preLoader_mc.perct_mc.visible=false;
      loaderInfo.removeEventListener(ProgressEvent.PROGRESS, loader);
   }
}
4

2 回答 2

1

Event.COMPLETE文件完全加载后,只需监听哪些触发器即可。连同其他一些调整:

loaderInfo.addEventListener(ProgressEvent.PROGRESS, loaderProgress);
loaderInfo.addEventListener(Event.COMPLETE, loaderComplete);

function loaderProgress(event:ProgressEvent) { 
    var percentage:Number = Math.round((stage.loaderInfo.bytesLoaded / stage.loaderInfo.bytesTotal) * 100);
    _txt.text = percentage + "%";
}

function loaderComplete(event:Event):void
{
    loaderInfo.removeEventListener(ProgressEvent.PROGRESS, loaderProgress);
    loaderInfo.removeEventListener(Event.COMPLETE, loaderComplete);

    preLoader_mc.perct_mc.visible = false;
}
于 2012-08-20T11:39:41.783 回答
0

在同一事件中,还有关于总字节数的信息。

你可以把它当作

filename.bytesTotal

根据您的代码,其中 filename 是您的事件变量。

通过做

filename.bytesLoaded / filename.bytesTotal

你有完成百分比。这永远不会进入无限循环。

您可以在此处查看有关 adobe 文档和示例的更多详细信息。

于 2013-11-01T21:36:02.973 回答