您的位置: 设计首页>>设计教材>>Flash教程>>正文
和Flash初学者详谈Loading的制作
来源:(闪吧论坛  时间:2008-11-20 点击:764次
    首先说一下为什么FLASH中要用Loading。所谓Loading,主要是指在网上观看Flash时,有时由于文件太大,或是网速限制,需要装载一段时间才能播放,但由于这个Loading所需的时间对于观看者来说是未知的,所以在Flash电影装载过程中如果没有任何提示,多数用户都不会有足够的耐心在面对一片空白的屏幕等上一会,于是我们需要做一个简短的Loading来告诉观看者下载的进度,让观看者知道所要等待的时间,充分体现对观看者的一种尊重。

      Loading的制作

      下面讲讲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%左右才出现的问题

      这几天遇到一个让人很是郁闷的问题:在模拟下载时,loading 要在75% 时才出现loading画面。
      这个问题的原因是:FLASH中的MC或声音设置成了在第一帧导出。这样第一帧就很大了,下载时当然要多花时间了。
      解决办法很简单:在库面板中将MC或声音的链接设置中的"在第一帧导出"去掉就OK了!大功告成!