首先说下为什么FLASH中要用Loading.所谓Loading,主要是指在网上观看Flash时,有时由于文件太大,或是网速限制, 需要装载一段时间才能播放,但由于这个Loading所需的时间对于观看者来说是未知的,所以在Flash电影装载过程中,如果没有任何提示,多数用户都不会有足够的耐心在面对一片空白的屏幕等上一会,于是我们需要做一个简短的Loading来告诉观看者下载的进度, 让观看者知道所要等待的时间.充分体现了对观看者的一种尊重.
(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/fjc/)下面来讲下Loading的具体的语法:
//影片加载时,将影片总字节数赋给变量total
onClipEvent (load) {total = _root.getBytesTotal();}
onClipEvent (enterFrame) {
//进入影片时,将影片已下载的字节数赋给变量loaded
loaded = _root.getBytesLoaded();
//将已下载的除以总字节数,再乘以100,于是得到目前已下载字节的百分比
percent = int(loaded/total*100);
//让text动态文本来显示下载的百分比.
text = percent+"%";//让影片停在当前下载的位置.
gotoAndStop(percent);
//判断已下载的字节数是否等于总字节数,如果为真,则跳到并播放第2帧.
if (loaded == total) {_root.gotoAndPlay(2);}
}以上就是主要的代码了,有一点要说明 ,有人可能说看不到数字百分比的显示.请检查舞台上是否添加了动态文本, 并定义它的实例名称与AS中的变量text的名称一致.
对于初学者来说,不知道在什么地方写代码.这是很普遍的一个问题,刚入门对于代码还没有完全理解,也会存在这样的问题.
那么对于Loading该在何处写代码呢?
接着往下看,Loading的代码要写在一个影片剪辑上.如果就一个文本来显示下载进度可能太单调. 做个像媒体播放器的进度条来显示下载进度更让人一目了然!关于Loading影片剪辑的制作我就不提了,因各个人喜好不同.
解决Loading 在70%左右才出现的问题
这几天在完善FLASH OS,遇到一个让人很是郁闷的问题:在模拟下载时,loading 要在75% 时才出现loading画面.
这个问题的原因是:FLASH中的MC或声音设置成了在第一帧导出.这样第一帧就很大了,下载时当然要多花时间了!
解决办法很简单:在库面板中将MC或声音的链接设置中的"在第一帧导出"去掉就OK了!大功告成!