惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

B
Blog RSS Feed
量子位
Recent Announcements
Recent Announcements
T
The Blog of Author Tim Ferriss
美团技术团队
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Blog — PlanetScale
Blog — PlanetScale
H
Help Net Security
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
博客园 - Franky
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
宝玉的分享
宝玉的分享
大猫的无限游戏
大猫的无限游戏
V
Visual Studio Blog
博客园 - 聂微东
aimingoo的专栏
aimingoo的专栏
Microsoft Security Blog
Microsoft Security Blog
U
Unit 42
J
Java Code Geeks
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
IT之家
IT之家
Hugging Face - Blog
Hugging Face - Blog
腾讯CDC
L
LangChain Blog

博客园 - Ricebug

android SDK下载及中文API地址 怎么让我们自己开发的Android程序设为默认启动 在android 中开发java.net.SocketException: socket failed: EACCES (Permission denied) 报错 Eclipse 安装中文插件 Android开发环境搭建(jdk+eclip+android sdk) JS innerHTML Double Quotes 正则表达式有无g参数时,test()结果的差异 [转载]分享8个超棒的免费高质量图标搜索引擎 平时技巧收集 ActionScript3.0平铺由外部加载的图片 - Ricebug - 博客园 截取中英文字符串 IE处理GIF动画图片onload事件的一个BUG Asp.net缓存动态图片 JS文件传参及处理技巧 [原创]jQuery动画弹出窗体支持多种展现方式 JQuery上传插件Uploadify使用详解及错误处理 [原创]jQuery插件处女座--超链接滑动动画 js页面定位,相关几个属性 全国哀悼日 网站变灰装(附代码)
BulkLoader类使用
Ricebug · 2010-08-02 · via 博客园 - Ricebug

BulkLoader提供简单的载入函数,不管要载入的是xml、swf还是声音文件,都只使用同一接口。功能强大,十分推荐。

用法,载入xml文件:

var bulkLoader:BulkLoader = new BulkLoader('main loading');
bulkLoader.add('my_xml_file.xml');
bulkLoader.start();

引用前面载入的资源:

var myXML:XML = BulkLoader.getLoader("main loading").getXML("my_xml_file.xml");

更全面的用法:

package {
import br.com.stimuli.loading.BulkLoader;
import br.com.stimuli.loading.BulkProgressEvent;
import flash.events.*;
import flash.display.*;
import flash.media.*;
import flash.net.*;

public class SimpleExampleMain extends MovieClip {
public var loader : BulkLoader;
public var v : Video;
public var counter : int = 0;

public function SimpleExampleMain() {
//构建BulkLoader的时候需要给它一个名称
loader = new BulkLoader("main-site");
//设置输出日志
loader.logLevel = BulkLoader.LOG_INFO;
//构建好了以后,通过add方法往队列里添加需要加载的对象
loader.add("photo.png");
//添加加载对象时候,也可以给它添加一个id,方便以后调用
loader.add("images.jpg", {id:"bg"});
//还可以通过priority属性调整加载对象的加载顺序,priority值越大,优先权越高,越早加载
loader.add("list.xml", {priority:20, id:"config-xml"});
//加载一个动画,加载动画的时候可以用pausedAtStart属性暂停播放动画
loader.add("mov.fla", {maxTries:6, id:"the-video", pausedAtStart:true});
//maxTries属性用于设定加载失败时的重试次数,注意,这里的“id”用了字符串命名
loader.add("song.mp3", {"id":"soundtrack", maxTries:1, priority:100});

//看了最新版本的文档,已经开始支持swf和json,一阵欣喜。

//添加一个COMPLETE事件,这个事件会在队列里的所有对象都加载完毕后触发
loader.addEventListener(BulkLoader.COMPLETE, onAllItemsLoaded);

//添加一个PROGRESS事件,这个事件会在队列加载时不断触发。通常可以用于监听加载进度。
loader.addEventListener(BulkLoader.PROGRESS, onAllItemsProgress);

//队列编辑完毕后用star方法开始加载队列
loader.start();
}
public function onAllItemsLoaded(evt : Event):void {
trace("every thing is loaded!");
//建立一个Video对象
var video : Video = new Video();
//从队列里提取刚才加载的视频流
var theNetStream : NetStream = loader.getNetStream("the-video");
addChild(video);
video.attachNetStream(theNetStream);
theNetStream.resume();
video.y = 300;
//提取图片

//可以直接通过url提取对象


var bitmapCats : Bitmap = loader.getBitmap("photo.png");
bitmapCats.width = 200;
bitmapCats.scaleY = bitmapCats.scaleX;
addChild(bitmapCats);

//当然,也可以通过id提取对象
var bitmapShoes : Bitmap = loader.getBitmap("bg");
bitmapShoes.width = 200;
bitmapShoes.scaleY = bitmapShoes.scaleX;
bitmapShoes.x = 220;
addChild(bitmapShoes);

//提取音频
var soundtrack : Sound = loader.getSound("soundtrack");
soundtrack.play();

//提取一个xml文档
var theXML : XML = loader.getXML("config-xml");
trace(theXML);
}
//通过BulkProgressEvent的loadingStatus方法可以显示加载过程中的所有信息!
public function onAllItemsProgress(evt : BulkProgressEvent):void {
trace(evt.loadingStatus());
}
}
}


这里特别提出一点,就是加入progess事件,当载入的对象太多,函数中的totalBytes并不能同步获取所有资源的Bytes,evt.loadingStatus()方法列出了所有的onProgess可以检测到的属性,通过N此检测,我确信这是一个BUG。loadedBytes是正常显示,而totalBytes会在loading接近尾声的时候才能够获取。我查看了code.google的文档,找到了一个方法,还没有去验证 loader.get("id").addEventListener(Event.COMPLETE,onBackgroundLoaded)获取众多资源中的特定支援,应用在Complete方法上,这样是否同样可以应用在PROGRESS恩?如果在获取每个单一资源的以后执行break,再把单一资源的totalBytes相加在一起,是否可以得出我们在总的onProgess方法里获取不到的totalBytes?

文章转自:http://amazonite.blog.sohu.com/131966709.html