flash制作一个完整的loading |
loading这个东西,说穿了其实是给消费者反馈的一种 体现 模式,在客户端中的loading,通常以鼠标的手型 变迁来 体现;而在web端,loading的创意则层出不穷了,并且给消费者的反馈更好 。本文将重要 阐述在flash中制作loading的一些问题 。 先来看看loading的原理 。在flash中,制作loading的 目标是为了预先加载一 部分内容(你 可以 取舍所有加载 结束,或者加载一 部分之后), 而后再把flash的重要内容 展示出来 。普通来讲,loading是放在第一帧上面的(也 可以不放在第一帧, 比方放在任意一帧,然而在第一帧你要做个跳转,让播放头到loading的那一帧去) 。这里要 留神一个问题,如果你的flash程序有从元件库里导出元件的话(默许为第一帧导出),要导出的原件所有加载 结束之后才会显示第一帧的内容(即,你的loading) 。这样的话很可能你在第一帧导出的内容过于 宏大,占领了整个flash 利用的很大一 部分, 比方50%,那么我们实际运行的 动机便是在一段空白之后loading从50%处开始显示 。 要幸免上面的问题(一个显而易见的不好的消费者体验),通常来讲我会用到两种 步骤: 第一,把要导出的元件 取缔导出,把它们集中放在某一帧(除开你做loading的那一帧), 而后在放元件的这一帧之后的那一帧开始运行你的程序 。 第二,用另个一个swf来加载需求做loading的swf 。这种 步骤 可以有 比较 完全的加载进度条以及百分比文字,缺陷是方便引起 其余问题,这个后面会 探讨 。 举个例子来说,我想为A.swf做一个loading, 要害代码如下: ......this. loaderInfo. addEventListener (SPANrogressEvent. SPANROGRESS,loadSPANrogress ); this. loaderInfo. addEventListener (Event. COMSPANLETE,loadComSPANlete ); ......AS3.0中增加了一个新的loaderInfo类来提供已加载的swf、图像文件的信息 。flashplayer通过调度ProgressEvent对象的loadProgress 步骤来实现对加载内容反馈的监听,当加载所有 实现后,flashplayer再调度Event对象的loadComple 步骤 。loadProgress 步骤是我定义的监听加载进度的 步骤,所有有关加载的信息都 可以在这个 步骤中加以反馈: ......SPANrivate functionLoadSPANrogress ( e:SPANrogressEvent ) { var loaded:uint= e. bytesLoaded; vartotal:uint= e. bytesTotal; varSPANercent: Number= int ( ( loaded /total ) * 100 ); trace (SPANercent+ "%" ); } ......上面的代码输出正在载入内容的百分比,这是一种最 方便的反馈,然而你 可以在这段代码里 丰硕你的loading的内容,使其更 存在趣味性,以使得消费者在期待下载的时候能清楚的晓得下载的进度,或者在这时候欣赏一段精美的动画——这 彻底取决于你的设计 。这时候加载 实现了, 可以执行loadComplete这个 步骤了 。在loadComplete 步骤里增加你想要的动作, 比方给消费者一个播放按钮以使得消费者 可以自主 取舍,或者直接进入某一帧进行播放 。 前面说过,直接在swf上增加loading可能会招致loading不是从1%开始,这时候 可以用一个swf加载另一个swf的 步骤来实现 完全的loading, 比方,我想在B.swf里加载A.swf,那么在B.swf的程序里 使用loader加载A.swf 。需求 留神的是,监听loader的加载进度需求 使用loader的contentLoaderInfo属性,而不是loaderInfo 。对于loaderInfo和contentLoaderInfo的关系如下图所示: 由于B.swf只起到加载A.swf的作用,并没有
其余显示内容,所以它
本身的加载
可以
忽略不计,这种
步骤
可以
比较
完全的
展示A.swf的加载过程 。然而,同时
使用这种
步骤也激发了一些问题,
比方你在A.swf里与web端进行通讯,
使用了loaderInfo的parameters属性,则你在用B.swf加载A.swf后,通讯将失效 。这是由于 综上所述,本文不是向大家介绍如何制作一个 完全的loading的,相信loading的例子在网上并不少见,然而惟独清楚了loading制作的 根本原理, 威力从 根本上制作出更为 标准和 友爱的loading来 。 |