仓酷云

标题: 带来一篇AS3教程:怎样制造一个完全的loading-Flash actionscript [打印本页]

作者: 小女巫    时间: 2015-1-15 20:34
标题: 带来一篇AS3教程:怎样制造一个完全的loading-Flash actionscript
这个播放器非常小,只需花一点点时间下载,对于在体验网页上的多媒体效果是个很好的开始。
POLUOLUO中心提醒:AS3教程:怎样制造一个完全的loading.
带来一篇AS3教程:怎样制造一个完全的loading-Flash actionscript
登录/注册后可看大图

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,关头代码以下:
  1. ......this.loaderInfo.addEventListener(ProgressEvent.PROGRESS,loadProgress);this.loaderInfo.addEventListener(Event.COMPLETE,loadComplete);......
复制代码
AS3.0中增添了一个新的loaderInfo类来供应已加载的swf、图象文件的信息。flashplayer经由过程调剂ProgressEvent工具的loadProgress办法来完成对加载内容反应的监听,当加载全体完成后,flashplayer再调剂Event工具的loadComple办法。loadProgress办法是我界说的监听加载进度的办法,一切有关加载的信息都能够在这个办法中加以反应:
  1. ......privatefunctionLoadProgress(e:ProgressEvent){varloaded:uint=e.bytesLoaded;vartotal:uint=e.bytesTotal;varpercent:Number=int((loaded/total)*100);trace(percent+"%");}......
复制代码
下面的代码输入正在载进内容的百分比,这是一种最复杂的反应,可是你能够在这段代码里丰厚你的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的干系以下图所示:
带来一篇AS3教程:怎样制造一个完全的loading-Flash actionscript
登录/注册后可看大图

因为B.swf只起到加载A.swf的感化,并没有其他显现内容,以是它自己的加载能够疏忽不计,这类办法能够对照完全的展现A.swf的加载历程。可是,同时利用这类办法也激发了一些成绩,好比你在A.swf里与web端举行通讯,利用了loaderInfo的parameters属性,则你在用B.swf加载A.swf后,通讯将生效。这是由于FlashVarsHTML参数只影响主swf(例子里为B.swf),就是说你能够在B.swf里完成通讯,可是A.swf不可。以是,我们能够先在B.swf中猎取到页面要传送的信息,然后再让A.swf从B.swf中猎取这个信息就能够了。一般我是如许处置的,假设B.swf的文档类为Main.as,那末在Main.as中界说一个static的属性好比prama(publicstaticvarprama),用来保留传送的信息,然后再在A.swf中经由过程Main.prama猎取这个信息。如许就直接完成了A.swf与web真个通讯。
综上所述,本文不是向人人先容怎样制造一个完全的loading的,信任loading的例子在网上其实不少见,可是只要分明了loading制造的基础道理,才干从基本上制造出更加标准和友爱的loading来。但愿本文能起到举一反三的感化,感谢人人!

Macromedia公司已经承诺在Flash8中将有很大的变化,而且它们中的许多都与视频功能有关。
作者: 第二个灵魂    时间: 2015-1-17 13:14
不能设置“alt”属性,失去了一次被搜说引擎检索到的机会。
作者: 莫相离    时间: 2015-1-25 15:32
Rich Media并不是一种具体的互联网媒体形式,而是指具有动画、声音、视频和/或交互性的信息传播方法。 
作者: 若相依    时间: 2015-2-3 07:53
富媒体广告的概念:富媒体 Rich Media,是由英文翻译而来,从字面上很难理解Rich Media到底是什么。
作者: admin    时间: 2015-2-8 20:34
在Web页面上使用声音是可能的,但是在精确的时间播放声音几乎是不可能的。Flash通过把声音放入时间期限内解决了这个问题,因此你现在可以把声音连接到动画的特定部分或者某个用户交互过程。
作者: 柔情似水    时间: 2015-2-26 08:35
专业的建筑动画、产品动画、角色动画、flash动画、游戏美工等全方位服务的创意动漫公司。十年专业的动漫制作经验,为政府、企业等制作出无数优秀的创意动画设计产品。
作者: 冷月葬花魂    时间: 2015-3-8 13:29
广告本身无法看到网址链接,不利于网站本身的搜索引擎优化,对增加网站排行的权重没有意义。
作者: 小魔女    时间: 2015-3-16 05:25
广告本身无法看到网址链接,不利于网站本身的搜索引擎优化,对增加网站排行的权重没有意义。
作者: 精灵巫婆    时间: 2015-3-22 20:49
祯率越高,动画中可包容的信息越多,动画看起来越光滑和流畅。当然,当祯率增加时,计算机的CPU的重绘工作越多,运行得就越慢。




欢迎光临 仓酷云 (http://www.ckuyun.com/) Powered by Discuz! X3.2