[ 来源:www.it55.com | 作者: | 时间:2007-07-12 | 收藏 | 推荐 ] 【大 中 小】
XML+MovieClipLoader实现多图动态载入
45398 www.it55.com it55学习IT知识,享受IT生活 4dfkjn
本以为网上这样的教程多的是,随便一抓就是一大把,结果不甚理想,不过也看到了一些有用的文章。 www.it55.com
还是自己动手丰衣足食吧,我们知道MovieClipLoader载入单图,还是比较简单的,但如果是多图呢,如何建立监听?如何在一副图片加载完后load下一张图片?如何与XML结合?
让我们一个一个来,首先是监听的问题,这么多图,不能新建n个object,然后分别对这几个object监听,效率太低,所以只能建立一个监听,余下的任务就是如何实现多图载入了。 www.it55.com在线教程
基本思路:
先给id赋值1,然后通过判断id与总图片数的大小,来决定是否加载下一张图片就像这样: vd;k;l www.it55.com rdfg
myObj.onLoadComplete = function() {
if (id<=nums) {//一个图片加载完成后,判断id与nums的值,如果小于nums继续加载
id++;
loadpic(id);
}
};
然后在loadpic(id)函数里执行: sflj www.it55.com kg^&fgd
myCL.loadClip(imgurl, loadpic_mc);
就可以继续加载了。
www.it55.com在线教程
最后是与XML结合的问题,其实也满简单的,当加载完外部xml时,执行相应的函数就行了,就像这样:
www.it55.com在线教程
myXML.onLoad = function(suc) {
if (suc) {
loadStart();//载入完成后执行loadStart函数
}
};
基本思路就是这样,贴上源码:
var id = 1;
var myXML:XML = new XML();
myXML.ignoreWhite = true;
myXML.load("list.xml");//载入xml
myXML.onLoad = function(suc) {
if (suc) {
loadStart();//载入完成后执行loadStart函数
}
};
var myObj:Object = new Object();
myObj.onLoadComplete = function() {
if (id<=nums) {//一个图片加载完成后,判断id与nums的值,如果小于nums继续加载
id++;
loadpic(id);
}
};
myObj.onLoadInit = function(tar) {//加载完成后,设置图片大小
tar._width = 85;
tar._height = 53;
tid = id-1;
//将loading和灰色背景设为不可见,并给按钮加上事件
//这里有个小技巧就是将tid赋予_btn.pid;方便将来调用
_root["loader"+tid+"_mc"].loading_mc._visible = false;
www.it55.com
www.it55.com
源文件下载:moviecliploader.rar
(阅读次数:)