Kingda's KLoader-给大家推荐的黑羽翔天的小小装载器1.00 (loader 1.5)2007/01/11
Kingda's KLoader
-给大家推荐的黑羽翔天的小小装载器1.00 (loader 1.5)
刚才才看到的,真的学Flash几个月来,这来看到真的有些惭愧。
到黑羽翔天的Blog也不是第一次了,竟然没有发现。^_^
这么好的东西一定要与大家分享,于是转载在此!
黑羽翔天http://www.kingda.org真的不愧是一个Flash好的学习和交流的站点,我有事没事就去看看。
________________________________________________________
Kingda's KLoader Version 1.5 发布! (2006-11-15)
Kingda's KLoader 黑羽翔天的小小装载器1.00 (loader 1.5) (编译后带默认皮肤仅11K)
Version 1.5版 新增特色:
- 新增passData功能,将父容器的参数传递给要装载的目标swf。黑羽很
喜欢的功能,适合大项目使用!
- 为了方便不会ActionScript的兄弟,增加了参数面板输入,连一行代码也不用写了
- 增加onLoadInit事件。区别和好处,详细见下文
另外,已经去除了每次使用KLoader,向Kingda.org报数的动作了。因为,测试已经完成,这个测试数据提交工作已经不再需要了。也谢谢大家之前的参与。
passData:
参数传递:即将KLoader所在的MovieClip的所有Number, Boolean, String的属性传递给要加载的swf。好处:好比现在我们要加载一个test.swf,但我们需要传递给它user_id,user_level。本来我们在浏览器中加载它时只要写http://www.xxx.com/test.swf?user_id=kingda&user_level=veryhigh 就可以将这两个参数传给test.swf了。但如果我们需要使用KLoader来加载这个test.swf的话,如何从外部传呢?比如说我们建立了一个testloader.swf.在_root下,放了一个KLoader组件,将KLoader的targetURL设为test.swf,并把passData设为true. 那么我们使用同样的方法,test.swf就得到了所需要的参数。如下: http://www.xxx.com/testloader.swf?user_id=kingda&user_level=veryhigh
这只是最简单的运用,更大的用处在于。
我们要在某个MovieClip比如a_mc中,加载某个example.swf,并想直接传递给它一些参数(String,Boolean,Number类型),再也不需我们考虑什么加载完成再赋值之类的麻烦事了。比如说我们希望example加载后,a.swf就能得到isStarcrafter,age, username等三个参数,那么我们只要在加载之前设置:
a_mc.isStarcrafter = true;
a_mc.age = 26;
a_mc.username = "孙颖"
那么设置KLoader的passData=true后,a.swf一加载完,就可以得到这些参数。爽乎?
debug:
设为true后,KLoader会trace出很有有用的帮助和进程信息。设为false后,除非出错,不然不会trace任何信息。
onLoadInit事件和loaded事件的区别:
该事件在swf装载成功,并已经初始化了第一帧内容后,发出。而loaded事件是在装载成功,但尚未初始化之前发出。属中高级用户使用时才会用到的差别。
特色:
1.支持根锁住,兼容性好。经测试可装载各种应用了_root的swf。
2.支持换皮肤。皮肤制作简单。
3.使用超级方便,代码量极大简化。现在load任何内容,只需要写一行代码即可。:![]()
对老手的话:
当你的项目中使用了大量的actionscirpt或者组件,那么你会发现设置link_id的“在第一帧导出”以及类的导出会给你带来很大困扰。首先就是loading往往会在40%甚至80%以后才会开始,形同虚设。
原因见:http://www.kingda.org/archives/kingda/2006/05/3load40.html
那么最简单的办法就是用我这个组件:
新建一个与你原来swf同长宽的fla,用KLoader来装载你原来的swf,loading就不会从40%或者更多才开始了。
例子演示请进:![]()
http://www.kingda.org/tools/KLoader.html
装载的过程中可以点击 skin no1, skin no2来切换loading 皮肤。
点击unload 可以卸载movie.
两个演示,一个是三年前的作品,缥缈,5M
一个是4年前的作品,twins,2M。都足够大到慢慢看loading ,哈哈。
如果要重复观看loading演示的话,请先到internet >"工具">清除缓存才可以。
下载地址:(2006-11-15 updated)
点击下载
安装方法参考:
(此处更新,清查看)2006-11-15
打开压缩包,有两个文件,KLoader.fla文件和KingdaLoader.mxp文件。
双击mxp文件,按提示安装。
如要使用KLoader,请直接从组件面板kingda.org目录中拖入Fla文件即可。然后就可以在参数面板上设置相关参数。
详细使用方法:
安装好后,使用时请直接从面板中拖动KLoader组件到你的Fla文件舞台上,命名为,比如说"aaa".
你要装载的swf的URL是"http://www.xxx.com/xxx.swf",或者是相对路径的"xxx/xxx.swf",
(URL可以是:要加载的 SWF、JPEG、GIF 或 PNG 文件的绝对或相对 URL。)
然后,在帧的动作面板中写:
aaa.load("http://www.xxx.com/xxx.swf");
即可。
注意: KLoader不但可以加载整个swf文件。也可以放在一个个Mc里加载子swf。这时候只要在load前多写一行
aaa.isLockroot = false;
就可以了。
如何换皮肤:做一个mc,有100帧,里面放什么动画随你便,只要展示大概从0-100的变化即可。
只要有一个 动态文本框,名字必须取为 "load_tip",即可。
然后设置该mc在库中的link_id(链接ID),比如设为 "xxx_mc"
那么换皮肤就可以使用:
kLoaderInstance.setup("xxx_mc");
kLoaderInstance.load("URL"); //这时皮肤就换了。
皮肤例子:
点击下载
API:
1如何动态创建KLoader?
a.
import org.kingda.tools.loader.KLoader;
createClassObject(KLoader, "yourLoaderName", depthNumber);
2.设置根锁住(好比你的KLoader命名为kLoaderInstance)
kLoaderInstance.isLockroot = true //锁住
kLoaderInstance.isLockroot = false //不锁
(在使用load前设置)
3.换皮肤:
kLoaderInstance.setup("skinLinkageID");
(在使用load前设置)
4.加载
kLoaderInstance.load("URLstring");
5.卸载
kLoaderInstance.unload();
6.对装载的影片的引用,供高级用户使用。
kLoaderInstance.container //MovieClip类型
7.装载成功事件,供高级用户使用。
事件对象结构: eO.type = "loaded"; eO.target = this; eO.target_mc = mc;
8.装载失败事件,供高级用户使用。
事件对象结构:eO.type = "error"; eO.target = this; eO.target_mc = mc; eO.errorCode = errorCode; eO.httpStatus = httpStatus;
注意,为了测试loader组件,目前内置了一个小小的统计,会将你装载的swf的 url字符串返回一下,便于我统计。正式版中会去掉,情支持。
www.kingda.org
e-mail:kingda1980@yahoo.com![]()
_______________________________________________
转载自:黑羽翔天http://www.kingda.org
具体地址:http://www.kingda.org/archives/kingda/2006/05/kingdas_loader.html
本Blog采用知识共享署名-非商业性使用-相同方式共享协议.
如蒙转载, 请指明出自: BF Design Club. 如果侵犯到你的版权时, 请速致信指出!

评论