读取二进制格式数据,加载动画。

本文介绍如何读取二进制格式的SWF数据并将其转化为Loader对象来展示动画。通过在内存中处理二进制数据,可以实现快速加载相同内容的多个动画。监听ProgressEvent.PROGRESS事件,利用bytesLoaded和bytesTotal属性跟踪加载进度。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

先加载swf的二进制数据,再转行成loader的图像,动画。因为二进制数据存在内存中,当要生成同种多个内容的时候,直接从内存中读取,很快捷。


import flash.display.Loader;

import flash.net.URLLoader;
import flash.net.URLRequest;
import flash.net.URLLoaderDataFormat;
import flash.events.Event;
import flash.utils.ByteArray;

var loader:Loader = new Loader();
var loader2:Loader = new Loader();

var urlloader:URLLoader = new URLLoader(new URLRequest("a.swf"));
urlloader.dataFormat = URLLoaderDataFormat.BINARY;
urlloader.addEventListener(Event.COMPLETE,onComplete);

function onComplete(e:Event):void{
    trace("ok");
    var ct:ByteArray = e.target.data as ByteArray ;
    loader.contentLoaderInfo.addEventListener(Event.COMPLETE,onLoaderComplete);
    loader.loadBytes(ct);
    
    loader2.contentLoaderInfo.addEventListener(Event.COMPLETE,onLoaderComplete);
    loader2.loadBytes(ct);
}

function onLoaderComplete(e:Event):void{
    addChild(e.target.loader as Loader);
    e.target.loader.y = Math.random() * 200 ;

}



监听加载进度

flash.events.ProgressEvent;

侦听urlloader对象的ProgressEvent.PROGRESS


bytesLoaded属性记录当前下载的字节数

bytesTotal记录总共的字节数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值