仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2237|回复: 8
打印 上一主题 下一主题

[学习教程] 带来一篇完善的loading-完善究竟

[复制链接]
老尸 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-15 22:43:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
运行时,它可以跨浏览器和操作系统、原汁原味地呈现具有表现力的应用程序、内容和视频,功能强大,兼容性高。
久没有发手艺日记了,要来就来个完善的。您别冲动,一个小小的loading谈甚么完善,我想你看了就晓得^_^
我的标语,将此文打形成环球最完美的非Flash初学者loading教程贴。转载请保存原文地点:
www.awflasher.com/blog/?id=444
基本篇
起首,想说一下我写此文的念头。记得很早之前我已经说过“没有loading的flash,不是完全的flash”。我想谁人句话大概过火了。由于偶然候一些不到10k的flash,的确不必要做甚么loading。但我一直以为,做一个优异的loading是权衡一个flasher水准,乃至立场的。你问我为何,我能够告知你,由于loading是独一一个你不会多看而一切用户、客户会看的器材,以是你对loading的器重水平,乃至能够反衬你这个flasher的职业品德!
有些做计划为主的伴侣,我熟悉很多,他们对loading都是苟且偷生的立场,做一个loading,更多的是本人找一个现成的,然后每次往套用,我团体以为是很欠好的习气。并非说我不倡始代码、元件的重费用,而是我以为关于loading这类器材,套多了,是要出成绩的。我激烈倡议那些已到达能够修正人家loading程度的flasher看看我的器材,固然,假如你连flash的as该写在哪都不晓得,倡议先进门了。
好,上面切进正题,怎样制造loading。
起首要感谢Macromedia的年夜伶俐,供应了很好的两个函数使我们能够做出完善的loading,那就是getBytesLoaded和getBytesTotal。请不要再用你改来改往改了两三年的谁人甚么getFrameLoaded甚么甚么了,我都记不分明怎样拼了。我只想说,Frame的看法将在真实的Interactive-Design中淡化。更别提甚么Scene,那是Flash的败笔!
那末loading怎样事情呢?我们怎样使用这两个函数呢?这里要提到一个
[1]200604/1594_2.html>[2]200604/1594_3.html>[3]200604/1594_4.html>[4]200604/1594_5.html>[5]200604/1594_6.html>[6]200604/1594_7.html>[7]200604/1594_8.html>[8]200604/1594_9.html>[9]200604/1594_10.html>[10]...200604/1594_2.html>下一页200604/1594_11.html>>>


主要的观点。就是距离挪用。距离挪用有多种体例,上面枚举出来,并枚举出其在loading制造中的位置和用法,接待增补:</P>・setInterval体例
写法:
functionloadCheck()
{
varp=getBytesLoaded()/getBytesTotal();
if(p==1)
{
clearInterval(intervalID);//开释距离挪用
gotoAndPlay(someFrame);//入手下手播放
}
}
varinterval=30;//这个数值是革新频次
varintervalID=setInterval(loadCheck,interval);我团体其实不保举初学者用这类写法。由于良多人简单无视clearInterval,而这个器材被无视失落,是很可怕的!假如你的setInterval没有给实时移除,意味着你将在全部swf的播放过程当中增添一个没有需要的包袱!
并且这类办法很不合适把持MoiveClip的情况(由于初学者会发明MC的路径是个年夜成绩,而loadCheck自己就是个函数,仍是被setInterval挪用的,要在loadCheck中指一个路径出来,挺贫苦的,你不要期望_root,那样会让你的程序不标准;也不要期望this,由于在函数顶用this仿佛不太幻想;最好甚么都不写,但常常你不敢不写),进而做出更好的效果。
・onEnterFrame体例
我最喜好的就是这类办法了。对照便利、直不雅。
由于常常我们是要用一个MC表现一个loading的进度,好比,一个进度条,大概更有创意的器材,只要你不克不及想到的,没有你不克不及做到的。
那末事实怎样用呢。起首,把创意定好。然后给你的MC一个实例名字,好比叫做loader_mc。这时候候在timeline上写代码,记着,是timeline而不是MC上。由于如许便于代码一致、便于路径一致
200604/1594.html>上一页200604/1594.html>[1][2]200604/1594_3.html>[3]200604/1594_4.html>[4]200604/1594_5.html>[5]200604/1594_6.html>[6]200604/1594_7.html>[7]200604/1594_8.html>[8]200604/1594_9.html>[9]200604/1594_10.html>[10]...200604/1594_3.html>下一页200604/1594_11.html>>>


、便于办理和寻觅。别为了省几个字母就把代码统统搬到button,mc下面往,然后一个on(press)了事。除非你是在唐塞你的作品;大概你是在为了交功课。</P>loader_mc.onEnterFrame=function()
{
vargetTar:MovieClip=this._parent;
varp=getTar.getBytesLoaded()/getTar.getBytesTotal();
trace(p);
if(p==1)
{
this.onEnterFrame=null;
gotoAndPlay(someFrame);//入手下手播放
}
}就这么复杂,记着,在MC的事务函数体外部援用MC,永久是一件很快的事变。由于this就能够指向这个MC自己,经由过程诸如this._parent之类的办法,能够找到你一切的MC!
・间接依附于timeline的轮回体例
十分十分十分陈旧的体例了,不先容了。不外你们能够往问问那些一向不喜好本人下手做loading的flasher,他们大概在改的某一个版本就是这个,呵呵。
以上算是对照复杂的。对照简单出成绩的,另有两个。
第1、MovieClipLoader
第2、含有多种V2组件的Loader
我买了回黉舍的火车票就持续写,哈哈
如果嫌不敷,能够看我原创的这个loading殊效,使用在我的作品集内里(作品别看了,巨烂非常,没工夫做甚么好器材),并看到源码
利器篇
参考英文教程,并作出大批原创增补-NeilWebb,neilATnwebbDOTcoDOTuk,http://www.nwebb.co.uk
读取外地数据介入Flash使用程序部署是一件十分重
200604/1594_2.html>上一页200604/1594.html>[1]200604/1594_2.html>[2][3]200604/1594_4.html>[4]200604/1594_5.html>[5]200604/1594_6.html>[6]200604/1594_7.html>[7]200604/1594_8.html>[8]200604/1594_9.html>[9]200604/1594_10.html>[10]...200604/1594_4.html>下一页200604/1594_11.html>>>


要和罕见的事情,特别是我们经常必要检测这些数据加载的进度。而MovieClipLoader(下称MCL)类却帮我们年夜年夜简化了这项贫苦事情。别的,它使得我们能猎取更多的必要,并削减代码量。我们能够用一个独自的MovieClip类来载进一个,大概多个外地资本到指定的MC大概层级,大概我们能够为每个加载事情制订分歧的MCL实例。</P>我决意分两部分来完成这篇教程。起首,我们将先容MCL的基础用法;然后我们将先容怎样利用一个独自的MCL实例来读取外地资本到分歧的MC,而且,我们将到场侦听器工具来介入事情。固然,欠亨过侦听器也能够完成义务,我们临时不先容侦听器,由于如许你会加倍简单了解MCL。
那末,我们起首来大致懂得一下MCL有哪些回调函数,前面也会有具体先容(aw附:回调函数我团体了解就是某一个类组、参数事前断定,具有指定功能的办法)这里能够懂得一下甚么叫做回调函数):
MovieClipLoader工具的回调函数:
事务回调函数(严厉请求数据范例的时分,它们并非办法,后祥):
*MovieClipLoader.onLoadStart()-当加载入手下手的时分触发
*MovieClipLoader.onLoadProgress()-在读取举行中触发
*MovieClipLoader.onLoadInit()-读取资本载进后的第一帧实行完成后触发
*MovieClipLoader.onLoadComplete()-当读取的外地资本已完整下载到当地时触发。
*MovieClipLoader.onLoadError()-当加载外地资本堕落时触发。
*MovieClipLoader.unloadClip()-将加载的外地资本移除或停止一个加载事情。
办法回调函数:
*MovieClipLoader.getProgress(target:Object):Object-读取外地资本的停顿,参数为MC工具(aw附:实在MC这类数据范例也就是一种工具)。前往一个工具,该工具包括两种事前预定好的属性(后祥)
要想好好了解这些回调函数,我们下手实验一下是最好的办法。固然MCL是Flash7以后才有的,以是别忘了公布的
200604/1594_3.html>上一页200604/1594.html>[1]200604/1594_2.html>[2]200604/1594_3.html>[3][4]200604/1594_5.html>[5]200604/1594_6.html>[6]200604/1594_7.html>[7]200604/1594_8.html>[8]200604/1594_9.html>[9]200604/1594_10.html>[10]...200604/1594_5.html>下一页200604/1594_11.html>>>


时分公布成为7+的版本号。假如间接用FlashPlayer来调试大概会碰到一些成绩,我们保举在扫瞄器中举行调试(团体定见:关于外地资本难以取得情形,好比教导网猎取公网资本,最好不要在IDE中调试)</P>在我们的例子中,我们将用一个MCL工具来读取分歧的图片,并将它们置进分歧的空MC中。本例中要用到的swf文件和图象源文件将在Actionscript.org找到(团体倡议:实在看完这篇文章要不要源文件没有需要了)
1、创建一个新的Flash文档,并在第1帧输出以下剧本:
_root.traceBox.vScrollPolicy="on";
functionmyTrace(msg)
{
_root.traceBox.text+=msg+newline;
_root.traceBox.vPosition=_root.traceBox.maxVPosition;
}我们这里是在创建一种跟踪调试机制,调试的(变量)将输入到文本框组件中。这里的办法"myTrace"是事后界说好的一个函数,它匡助我们顺遂完成对某些信息的监控;个中第二句的感化是使文本框随时输入最新监控值。
2、如今从组建库托拽一个TextArea组件进进场景,并赐与符合的巨细,和一个实例称号traceBox(对应下面的剧本)
3、接上去,我们要创建一个新的MC元件。并在场景上部署3个实例,为它们分离定名为myMC1,myMC2,myMC3。我们将把图片大概swf影片装载进进它们,而且,在它们下载到当地后依照需求调剂它们的尺寸。实在,对图片工资地改动尺寸会形成很多欠好的成果,好比锯齿的发生,可是为了让人人懂得onLoadInit事务的利用,我们将会这么做。
4、然后,我们创建一个MCL工具,在第一帧输出以下剧本:
varmyMCL=newMovieClipLoader();//createaninstanceofMovieClipLoader
aw附:这里我想罗索以下,关于Objec
200604/1594_4.html>上一页200604/1594.html>[1]200604/1594_2.html>[2]200604/1594_3.html>[3]200604/1594_4.html>[4][5]200604/1594_6.html>[6]200604/1594_7.html>[7]200604/1594_8.html>[8]200604/1594_9.html>[9]200604/1594_10.html>[10]...200604/1594_6.html>下一页200604/1594_11.html>>>


t的翻译。由于上述代码的正文中,老外用的是instance这个词,直译的话,Object是“工具”;Instance代表“实例”。前者更注意于其数据范例,尔后者则更注意于其客不雅存在性。</P>5.如今我们就能够部署剧本了,在第一帧:
myMCL.onLoadStart=function(targetMC)
{
varloadProgress=myMCL.getProgress(targetMC);
myTrace("Themovieclip"+targetMC+"hasstartedloading");
myTrace("Bytesloadedatstart="+loadProgress.bytesLoaded);
myTrace("Totalbytesloadedatstart="+loadProgress.bytesTotal);
}这个函数的第一行中声名了一个(工具范例的)变量,明显,这个变量的值由myMCL工具的getProgress办法取得.方才已先容了getProgress办法,这里能够看到,前往的loadProgress.bytesLoaded就是loadProgress工具的bytesLoaded属性.
这里我在乱痪洌何裁捶祷匾桓龆韵螅环祷鼐咛宓闹怠U馐怯性虻摹:祷刂档墓δ苁沟贸绦蛏杓聘油昝溃欢芏嗲榭鱿拢颐且祷氐牟⒎且桓鲋担颐强赡芊祷亓礁龌蛘吒嗟闹担踔了堑氖堇嘈投疾幌嗤U庋挥型ü韵蟮男问嚼捶祷亓恕U馐墙饩鑫侍庾罴虻プ罡咝У姆椒āO旅嫒myTrace就照应了之前我们界说的监控函数,如许就可以看到我们存眷的变量了。
6、我们已为onLoadStart事务部署了响应的事情,接上去我们要为上述其
200604/1594_5.html>上一页200604/1594.html>[1]200604/1594_2.html>[2]200604/1594_3.html>[3]200604/1594_4.html>[4]200604/1594_5.html>[5][6]200604/1594_7.html>[7]200604/1594_8.html>[8]200604/1594_9.html>[9]200604/1594_10.html>[10]...200604/1594_7.html>下一页200604/1594_11.html>>>


他事务部署事情了。紧接着是onLoadProgress,它承受三个参数:targetMC,loadedBytes,totalBytes。分离代表方针容器MC实例;已读取的体积、整体积。</P>myMCL.onLoadProgress=function(targetMC,loadedBytes,totalBytes){
myTrace("movieclip:"+targetMC);
myTrace("Bytesloadedatprogresscallback="+loadedBytes);
myTrace("Bytestotalatprogresscallback="+totalBytes);
}7、我们的onLoadComplete办法仅承受一个参数,它就是容器MC实例。像onLoadStart一样,我们用getProgress办法来前往读取情形。
myMCL.onLoadComplete=function(targetMC)
{
varloadProgress=myMCL.getProgress(targetMC);
myTrace(targetMC+"hasfinishedloading.");
myTrace("Bytesloadedatend="+loadProgress.bytesLoaded);
myTrace("Bytestotalatend="+l</p>
200604/1594_6.html>上一页200604/1594.html>[1]200604/1594_2.html>[2]200604/1594_3.html>[3]200604/1594_4.html>[4]200604/1594_5.html>[5]200604/1594_6.html>[6][7]200604/1594_8.html>[8]200604/1594_9.html>[9]200604/1594_10.html>[10]...200604/1594_8.html>下一页200604/1594_11.html>>>


oadProgress.bytesTotal);
}8、onLoadInit办法将在一切加载的内容被下载到当地容器MC中以后才入手下手实行。这将使得你能更好的把持加载出去的内容的属性。我选择的图片十分年夜,如许我们能够把读取历程看得加倍明晰,而我也要对已加载的图片尺寸举行修整,让它能全体显现出来。
myMCL.onLoadInit=function(targetMC)
{
myTrace("Movieclip:"+targetMC+"isnowinitialized");
targetMC._width=170;
targetMC._height=170;
}9、另有一个回调办法onLoadError。假如有毛病产生,它将会被触发。作为一个优异的程序员,部署完美的使用程序的时分,对毛病产生的制止措施是必不成少的!
myMCL.onLoadError=function(targetMC,errorCode)
{
myTrace("ERRORCODE:"+errorCode);
myTrace(targetMC+"Failedtoloaditscontent");
}10.Wellthatsthehardworkoutoftheway.Nowwejusthavetoloadthefilesintotheirrespectivetargets,usingloadClip,andpassingittwoarguments:thelocationofyour
200604/1594_7.html>上一页200604/1594.html>[1]200604/1594_2.html>[2]200604/1594_3.html>[3]200604/1594_4.html>[4]200604/1594_5.html>[5]200604/1594_6.html>[6]200604/1594_7.html>[7][8]200604/1594_9.html>[9]200604/1594_10.html>[10]...200604/1594_9.html>下一页200604/1594_11.html>>>


file,andthedestinationmovieclipforthefiletoloadinto.
10、我们终究将最庞大的事情部署好了。接上去我们只用利用loadClip办法读进我们必要的内容就好了。loadClip办法的两个参数分离是外地资本的地点和容器MC的实例。</P>myMCL.loadClip("http://www.yourdomain.com/test1.swf","_root.myMC1");
myMCL.loadClip("http://www.yourdomain.com/test2.swf","_root.myMC2");
myMCL.loadClip("http://www.yourdomain.com/pic.jpg","_level0.myMC3");路径能够选择绝对路径。注重,路径的绝对性也是一个年夜成绩,当SWF在非本路径的HTML中被援用的时分,服从HTML地点的路径!这一点是良多Flash教程都无视的。以是,偶然候相对路径也有相对路径的优点。[路径成绩源文件下载,下载了就一览无余了]
一切的调试事情最幸亏扫瞄器中,而非IDE中完成。并且剧本输入体例必需是AS2。
Remember,foreverythingtoworkproperlyyouneedtobetestingthrouhgabrowser(andpreferablyonlinesoyoucanseethefilesloadinginrealtime).YoualsoneedtobeexportingyourcodeasActionScript2.
InthesecondpartofthistutorialImgoingtoshowyouhowtousetheMovieClipLoaderclassinareal-worldsituation,inordertosolveacommonproblemwhenassigningeventhandle
200604/1594_8.html>上一页200604/1594.html>[1]200604/1594_2.html>[2]200604/1594_3.html>[3]200604/1594_4.html>[4]200604/1594_5.html>[5]200604/1594_6.html>[6]200604/1594_7.html>[7]200604/1594_8.html>[8][9]200604/1594_10.html>[10]...200604/1594_10.html>下一页200604/1594_11.html>>>


rstoMovieClipsdynamically.
接上去,我将先容及时挪用MCL的情形。为了能顺应更多的使用,我们常常静态地为MCL制订事情。</P>aw画外音:偶然候,我们云云写:
1、varmcl:MovieClipLoader=newMovieClipLoader();
2、varmcl=newMovieClipLoader();发明第一种写法没法为MCL制订onLoadStart等事务办法。这是编译器依据指定变量的数据范例发生的成绩。osflash的一些伴侣给了一些有效的概念,我也发明这个成绩恰好触及到Flash外部的事务呼应机制,无妨先容一下:
Flash的三种事务呼应机制
=====
1、复杂的回调函数,最老的;
2、侦听器,ASBroadcaster,FlashMX时期;
3、事务侦听器,EventDispather,FlashMX2004时期
这里,MCL用的是第二种机制,而整套V2组件则利用最初一套机制。
附:MCL官方声名,注重:上述办法中,仅包括getProgress办法!
intrinsicclassMovieClipLoader
{
functionMovieClipLoader();
functionaddListener(listener:Object):Boolean;
functiongetProgress(target:Object):Object;
functionloadClip(url:String,target:Object):Boolean;
functionremoveListener(listener:Object):Boolean;
</p>
200604/1594_9.html>上一页200604/1594.html>[1]200604/1594_2.html>[2]200604/1594_3.html>[3]200604/1594_4.html>[4]200604/1594_5.html>[5]200604/1594_6.html>[6]200604/1594_7.html>[7]200604/1594_8.html>[8]200604/1594_9.html>[9][10]...200604/1594_11.html>下一页200604/1594_11.html>>>


functionunloadClip(target:Object):Boolean;
}团体增补以为,1、2在不严厉请求数据范例的时分能够通用。
上面入手下手先容用侦听器来检测MCL事务的办法。在此之前,我们办理一个最多见的成绩,我们常常会在论坛中看到有人如许发问:
援用
人人好,我静态地创建了一些MC,并逐一分派给它们一个事务句柄(标记)。然后,我将外地资本读取到它们当中。可是这些分派好的事务句柄都不事情了!
紧接着,提问人一样平常会贴出一对七零八落的代码,并大叫拯救。
那末,我们起首来剖析一下这个毛病产生的缘故原由:当外地资本被载进到一个MC中时,这个MC将会从头初始化。这意味着任何被事后制订好的代码都将付之东流。关于开辟职员已手动在舞台上布置好的MC则并没有相干的贫苦,这是由于任何间接经由过程onClipEvent制订到MC的代码都能幸免被从头初始化。而静态创建的MC则举行上述的“初始化”,由于我们是在运转中给它们设置的事务代码。
我们怎样制止这个成绩呢?实在办法太多了,良多论坛也举行了极其具体的会商,我就未几赘述了。
你如今大概还记得方才我先容的“读取外地数据介入Flash使用程序部署是一件十分主要和罕见的事情,特别是我们经常必要检测这些数据加载的进度”
我们已先容了MCL的几个回调函数,以是这里也不再赘述了。我们如今制造如许一个效果:缩略图标式的图片扫瞄体系。我们将要从内部读取一些JPG图片,将它们放进我们静态部署的MC中。而且我们但愿这些静态创建的MC都具有各自的onPress事务。我们经由过程在MC装载好内部资本以后再为之分派事务。
在我们入手下手之前,我还想提示人人注重一些常常呈现的疏漏:必定要在公布的时分设置成Flash7+AS2以上的版本;其次,用扫瞄器测试你的效果,而不是IDE;不然你将会失掉奇异的了局。
如今,我们入手下手体例代码,你会发明它比你设想的要复杂很多。
1、新建一个Flash文档。
2、找四张100*100像素的缩略图片。
3、创建一个静态文本框,也许在300*300像素摆布,利用12号字体,并使之实际边框,如许我们更好监测。别忘了设
200604/1594_10.html><<200604/1594_10.html>上一页[11]200604/1594_12.html>[12]200604/1594_13.html>[13]200604/1594_14.html>[14]200604/1594_15.html>[15]200604/1594_16.html>[16]200604/1594_12.html>下一页


置它为多行的。
4、创建一个100X100像素的矩形,变化为MC,然后将它移进场景。这时候候,他已呈现在库中了。在库中,设置他的链接名为“img”,并使其“在第一帧导出”。实在这个矩形会在内部资本载进的时分被代替,如今只是为了调试便利。
5、在方才安排textBox文本框的层之上新建一层,这一层用于安排我们的代码,先写上</P>stop();6、如今我们界说一个MCL的实例,别的界说一个基础工具,作为我们的侦听器:
myMCL=newMovieClipLoader();//defineMovieClipLoader
myListener=newObject();//definelistener7、接上去我们用侦听器来侦听onLoadComplete事务,该事务的感化上文已提到了。我们如今把它交给listener工具,而不是MCL实例。固然,终极要把侦听器工具再交回MCL(以侦听其回调函数)的时分,失掉的效果就是我们必要的效果了。
记着,只要当读取终了的时分,对MC部署事务义务才是平安牢靠的!以是,在onLoadComplete被触发的时分才部署这个onPress事务给MC:
myListener.onLoadComplete=function(targetMC){
debug.text+="LOADINGOF"+targetMC
+"COMPLETE"+newline;
targetMC.onPress=function(){
debug.text+=newline
+"targetMC="</p>
200604/1594_10.html><<200604/1594_11.html>上一页200604/1594_11.html>[11][12]200604/1594_13.html>[13]200604/1594_14.html>[14]200604/1594_15.html>[15]200604/1594_16.html>[16]200604/1594_13.html>下一页


+targetMC._name;
}
}注:上述代码中有几行被工资打断,但这其实不影响效果。

你大概已注重到了,MC的实例称号在onLoadComplete被触发的时分是作为一个参数的身份传送给onLoadComplete的,如许我们把持这个MC就十分便利了。好比这里就能够用点击MC来检测事务是不是被乐成部署给MC。
8、如今我们创建一个函数,它包括一个复杂的轮回来部署场景上的MC。而且实时地为每个部署好的MC分派读取外地资本的义务(loadClip办法),代码以下:
functioninitClips(){
for(i=1;i<=4;i++){
this.attachMovie("img","img"+i,i);
this["img"+i]._x=i*110;
myMCL.loadClip("0"+i+".jpg",
this["img"+i]);//codewrapped
}
}9、到这里基础上就完成了。如今我们剩下的事情就是注册侦听器而且依照需求挪用相干函数、办法,反应到代码上就是以下两行:
myMCL.addListener(myListener);
initClips();注重这里的按次,我们的侦听器工具在挪用initClip()函数之前就被感化于MCL实例了。如今我们的MC的onPress事务能够顺遂事情了,由于当图片被完整读进以后,事务才被分派已往。我们的代码也十分简便。我们不再用为了loading而往制造贫苦的轮回了,MovieClipLoader帮我们完成了一切事情!
附:完全代码以下:
stop();上一页200604/1594_11.html>[11]200604/1594_12.html>[12][13]200604/1594_14.html>[14]200604/1594_15.html>[15]200604/1594_16.html>[16]200604/1594_14.html>下一页</b></p>
>myMCL=newMovieClipLoader();
myListener=newObject();
myListener.onLoadComplete=function(targetMC)
{
targetMC.onPress=function()
{
trace("pressed");
}
}
functioninitClips()
{
for(i=1;i<=4;i++)
{
this.attachMovie("img","img"+i,i);
this["img"+i]._x=i*110;
myMCL.loadClip(url,this["img"+i]);
}
}
myMCL.addListener(myListener);
initClips();到此为止,你应当信任MCL的确是一个车载斗量的好器材了吧?:)
减负篇
V2,也爱,也恨!这里先容关于含有V2组件项目标loading成绩
V2组件自面世以来就颇受争议,大致归纳综合以下:

长处:
・界面比V1组件加倍美妙、一致,人机交互形式加倍完美
・均接纳面向工具剧本部署

弱点
・体积粗笨,开辟一些只用到一两个组件的小使用程序时很为难

动静机制方面利用EventDispather的动静播送机制,代替原本的AsBroadcast机制。使得刚出来的时分良多人基本不会用。

这里就不会商更多了,先说loading。含有大批v
200604/1594_10.html><<200604/1594_13.html>上一页200604/1594_11.html>[11]200604/1594_12.html>[12]200604/1594_13.html>[13][14]200604/1594_15.html>[15]200604/1594_16.html>[16]200604/1594_15.html>下一页


2组件的产物要想见人一定是不克不及不作loading的,好比awsblog右边的谁人blog小贴士。但是每次在loading的时分仿佛城市碰到贫苦。那就是粗笨的体积全体被放到第一帧导出了,如许招致对一些300k之内的,含有v2组件的SWF文件举行远程载进的loading效果变得左支右绌

办理的举措也不是没有,复杂归纳综合为三个步骤:

1、往失落“Exportinfirstframe”
</P>
2、在公布的时分设置一下“Exportframeforclasses”,这一点十分主要!

3、关于外地读取的含有V2的swf文件,将容器mc举行以下设置:
loader_mc._lockroo</p>
200604/1594_10.html><<200604/1594_14.html>上一页200604/1594_11.html>[11]200604/1594_12.html>[12]200604/1594_13.html>[13]200604/1594_14.html>[14][15]200604/1594_16.html>[16]200604/1594_16.html>下一页


t=true;好了,如今宁神享用出色而粗笨的V2组件吧~!上一页200604/1594_11.html>[11]200604/1594_12.html>[12]200604/1594_13.html>[13]200604/1594_14.html>[14]200604/1594_15.html>[15][16]</b>

使用AdobeActionScript3.0开发高级的交互式项目。设计人员和开发人员可使用它来创建演示文稿、应用程序和其它允许用户交互的内容。
兰色精灵 该用户已被删除
沙发
发表于 2015-1-17 17:19:27 | 只看该作者
各种性能才能运用的得心应手,制作出优秀的动画。
谁可相欹 该用户已被删除
板凳
发表于 2015-1-21 08:28:16 | 只看该作者
Rich Media并不是一种具体的互联网媒体形式,而是指具有动画、声音、视频和/或交互性的信息传播方法。 
只想知道 该用户已被删除
地板
发表于 2015-2-6 12:47:44 | 只看该作者
FLASH动画在如今的很多网站中都比较常见,其所独有的视觉效果和感染力成为各行各业宣传企业形象、推广产品的最佳平台。
愤怒的大鸟 该用户已被删除
5#
发表于 2015-2-16 05:16:39 | 只看该作者
祯率越高,动画中可包容的信息越多,动画看起来越光滑和流畅。当然,当祯率增加时,计算机的CPU的重绘工作越多,运行得就越慢。
简单生活 该用户已被删除
6#
发表于 2015-3-5 00:12:19 | 只看该作者
FLASH动画的视觉观赏效果好,容易给民众留下深刻的印象,是动画行业从业者和动画创意设计制作机构的主要业务之一。
乐观 该用户已被删除
7#
发表于 2015-3-11 22:08:21 | 只看该作者
矢量图形相对于位图的另一个优势是可以随意缩放的能力。这是对动画进程的奖赏,对用户来说也是一个很酷的特征。在Flash之前,Web上没有这种功能。
小女巫 该用户已被删除
8#
发表于 2015-3-19 15:29:32 | 只看该作者
在与制作传统动画相比较的同时,flash具有便捷、节省人力财力,节约时间、推广方便的许多优势。但与此同时它也具有一点的缺点。
因胸联盟 该用户已被删除
9#
发表于 2015-3-28 22:47:12 | 只看该作者
随着动漫发展趋势,我国也越来越重视动漫产业的发展,各种制作动画软件应运而生,其中flash比较突出。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-28 15:16

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表