大雀软件园

首页 软件下载 安卓市场 苹果市场 电脑游戏 安卓游戏 文章资讯 驱动下载
技术开发 网页设计 图形图象 数据库 网络媒体 网络安全 站长CLUB 操作系统 媒体动画 安卓相关
当前位置: 首页 -> 网络媒体 -> FLASH -> 纯AS的Loading效果四例

纯AS的Loading效果四例

时间: 2021-07-31 作者:daque

媒介:略微大少许的flash大作在播放之前城市有一个loading预载画面,这商量到搜集的速率,当地欣赏不须要等候载入,但传到网上,由于每个用户的网速各别,以是很有需要在咱们的大作中介入loading画面,之前,仍旧有很多教程是对于loading创造本领的,即日咱们给读者群报告四个纯as的loading功效,不懂as的菜鸟或“代码盲”以至不妨径直复制教程中的代码到本人的大作中,懂as代码的伙伴,不妨提防观赏那些代码,从国学到更多的as常识,或由此扩充出更多的as loading功效……感动作家=棉花糖=、egg616、小郎供给源码和思绪--闪客帝国的叶子 一.=棉花糖=的loading教程 比拟大略 动静表露load百分比 将十足代码正片到第一帧,当load结束后,会机动发端播放源代码: stop (); _root . createtextfield ( "myload_txt" , 1 , 0 , 0 , 0 , 0 ); with ( _root . myload_txt ) { //树立文本 background = true ; //文本框能否有后台 backgroundcolor = 0x336699 ; //文本框的后台脸色 textcolor = 0xffffff ; //文古字段华文本的脸色 type = "dynamic" //文古字段为动静文本 selectable = false ; //文本能否可选 autosize = "center" ; //遏制文古字段的机动巨细安排和对齐 _x = stage.width/2; //文古字段的横坐标 _y = stage.height/2;//文古字段的横坐标 } onenterframe = function () { var loaded = _root . getbytesloaded (); var total = _root . getbytestotal (); _root . myload_txt . text = math . floor (( loaded / total )* 100 )+ "%" ; if ( loaded == total ) { onenterframe = null ; removemovieclip ( _root . myload_txt ); play (); } }; 二. egg616的loading艺术之一1、创造道理: 寰球上一切的loading大约都不妨分为三个局部: 1) 创造一个轮回,用来革新数据。普遍来说有两种本领,一种是做出二帧,在第二帧顶用gotoandplay(1)吩咐爆发轮回。另一种是只做一帧,运用onenterframe吩咐爆发轮回。 2) 运用getbytestotal()与getbytesloaded()吩咐获得文献数据。 3) 以图形或动画的办法将第二步获得的数据展现出来(普遍同声还以文本办法透彻表白) 上头的证明,对一个会做loading的人来说是很领会的,但不会做的看了大约仍旧不会(呵呵)以是底下咱们一步一步来,做个大略的例子(不做文本表露数据了):2、大略的例子(惟有两步,断定你有这个耐心): Ⅰ翻开你一个怜爱的动画,兴建一个场景,并把它拖到最前方。 Ⅱ在帧上介入以次的as举措,即大功成功! 源代码:stop (); function dr ( nam , de , d , al ) { na = createemptymovieclip ( nam , de ); na . linestyle ( d , 0x9900cc , al ); na . _x = 160 ; na . _y = 280 ; na . lineto ( 240 , 0 ); } //一个画线条的因变量,四个参数对应什么,本人看哈onenterframe = function () { var a = getbytestotal (); var b = getbytesloaded (); //博得载入的数据 if ( b < a ) { dr ( "b1" , 0 , 30 , 30 ); dr ( "b2" , 1 , 20 , 30 ); dr ( "b3" , 2 , 20 , 100 ); b3 . _xscale = b / a * 100 ; //画三条横线,表露载入进度; } else { delete onenterframe ; b1 . removemovieclip (); b2 . removemovieclip (); b3 . removemovieclip (); play (); //载入结束,简略图形和因变量; } }; 不妨按两次ctrl+enter举行载入尝试,若对as有畏缩症者,闭着眼睛复制—粘贴即可 底下是这个例子的功效图

三. egg616的loading艺术之二1、翻开你要加loading的动画,兴建一个场景,并把它拖到最前方。 2、在最前方的场景的第一帧上介入底下的as代码。 源代码://copyright: 吴杰兴 广东廉江//本大作可随便复制或窜改,但请证明原作家stop();sw = 550;sh = 400;//stage.showmenu = false;//湮没腻烦的右键菜单cs = 60;//网格的聚集水平r = 2550;d = r/math.sqrt2;//网格的委曲度p = math.pi;//设置常数picreateemptymovieclip("ln", 1);ln.linestyle(0, 0xffffff);for (var i = 1; i<=cs; i++) { ln.moveto(sw/2+r*math.cos(i/cs*p), -d+300+r*math.sin(i/cs*p)); ln.lineto(sw/2+r*math.cos(i/cs*p+p/2), -d+300+r*math.sin(i/cs*p+p/2));}//底下画个脸色突变的基础createemptymovieclip("bg", 0);with (bg) { colors = [0x6666ff, 0xffffff, 0x660099]; alphas = [30, 30, 80]; ratios = [0, 100, 200]; linestyle(5, 0x00ff00); matrix = {matrixtype:"box", x:200, y:115, w:50, h:450, r:p/2}; begingradientfill("linear", colors, alphas, ratios, matrix); moveto(-200-sw, -100); lineto(200+sw, -100); lineto(200+sw, 100+sh); lineto(-200, 100+sh); lineto(-200, -100); endfill();}//r1 = 50;r2 = 170;nu = 32;//辨别为重心圆的3个参数;cr = 600;//cr是填色半径createtextfield("te", 5, 75, 100, 160, 100);te.textcolor = 0x9900ff;//创造文本表露载入的数据function fo1(nam, de, ro) { na = createemptymovieclip(nam, de); with (na) { _y = 40; linestyle(0, 0x000000, 0); colors = [0x6666ff, 0xffffff, 0x660099]; alphas = [130, 130, 20]; ratios = [0, 120, 200]; matrix = {matrixtype:"box", x:-cr/2, y:-cr/2, w:cr, h:cr, r:p/2}; begingradientfill("radial", colors, alphas, ratios, matrix); //这边用as来突变弥补 moveto(r1, 0); var bl = math.cos(p/nu); for (var i = 1; i<=ro; i++) { curveto(r1*math.cos(i*p/(nu/2)-p/nu)/bl, r1*math.sin(i*p/(nu/2)-p/nu)/bl, r1*math.cos(i*p/(nu/2)), r1*math.sin(i*p/(nu/2))); } lineto(r2*math.cos(ro*p/(nu/2)), r2*math.sin(ro*p/(nu/2))); for (var i = ro; i>=1; i--) { curveto(r2*math.cos(i*p/(nu/2)-p/nu)/bl, r2*math.sin(i*p/(nu/2)-p/nu)/bl, r2*math.cos((i-1)*p/(nu/2)), r2*math.sin((i-1)*p/(nu/2))); } lineto(r1, 0); endfill(); }}//此因变量用来画中央的圆环,个中圆环是用curverto的本领作出,//这边不作引见,我将鄙人个教程中胪陈onenterframe = function () { ab = _root.getbytesloaded(); bb = _root.getbytestotal(); // 获得数据 sb = int(ab/bb*nu); fo1("di", 4, sb); di._x = 275; di._y = 200; di._yscale = 25; di._rotation = -30; // 挪用因变量作上头的圆环 fo1("yz", 3, sb); yz._xscale = 100*math.pow(3, 0.5)/2; yz._yscale = 25; yz._alpha = 30; yz._x = 275; yz._y = 360; // 在底下再作一个通明的圆环,动作上一个的影子 if (ab>>>" di.onpress = function() { delete onenterframe; te.removetextfield(); di.removemovieclip(); yz.removemovieclip(); ln.removemovieclip(); bg.removemovieclip(); play(); }; }};由于是纯as的大作,就不复供给fla文献了,底下是功效图(jpg方法的,比起swf的差多了。)

纯as的loading效果四例图1

四.小郎的as loading1、翻开你要加loading的动画,兴建一个场景,并把它拖到最前方。 2、兴建一个空mc,并将其拖入兴建的场景的第1帧上,并将本来例名定名为:ss3、在mc上介入以次代码(换句话说:单击mc,翻开as面板,输出以次代码:)onclipevent (load) {this._x = 180;this._y = 300;_root.ss.createtextfield("tt", 1, 70, 50, 100, 20);_root.ss.tt.textcolor = 0xff0000;_root.ss.createemptymovieclip("louding", 2);with (_root.ss.louding) {linestyle(0, 0x0000ff, 0);moveto(0, 0);//开始beginfill(0xff0000, 100);lineto(0, 10);lineto(10, 10);lineto(10, 0);endfill();}_root.ss.createemptymovieclip("loudingk", 3);with (_root.ss.loudingk) {linestyle(0, 0x000000, 100);moveto(0, 0);//开始lineto(0, 10);lineto(200, 10);lineto(200, 0);lineto(0, 0);}}onclipevent (enterframe) {load = int(_root.getbytesloaded()/_root.getbytestotal()*100);_root.ss.tt.text = "loading"+load+"%";_root.ss.louding._width = 2*load;if (_root.getbytesloaded() == _root.getbytestotal()) {_root.play();}}功效如图:

纯as的loading效果四例图2

小提醒:本机尝试loading功效的简片面法ctrl+enter之后常常看得见loading功效就发端播放主体动画了,要想领会地预览到loading的功效,一个很大略的本领是:ctrl+enter之后在尝试动画播放状况下再按一次ctrl+enter就不妨领会地看到loading功效了,其余不妨变换模仿modem的速率,在尝试动画的窗口中,从debug菜单中可采用14.4、28.8、56k等几个速率,或自设置

纯as的loading效果四例图3

热门阅览

最新排行

Copyright © 2019-2021 大雀软件园(www.daque.cn) All Rights Reserved.