• URLStream对象包含的加载数据


    a、URLLoader与URLStream

    区别就是URLLoader需要等到所有的数据下载完成之后,才能获取,而URLStream可以一边下载,一边就可以取到数据了

    数据:e.target.data    stream.readBytes(byte,byte.length);

    b、Loader.loadBytes,可以直接发送数据给Loader,而不是让Loader去下载。每一次loadBytes,Loader都会丢弃以前的数据

     

    _loader = new Loader();
    this.addChild(_loader);

    private function progress(e:ProgressEvent):void{
        var count:int = 50000;
        if (stream.connected){
            stream.readBytes(byte, byte.length);  //若是完成事件stream.readBytes(byte);  
        }
        if(e.bytesLoaded > count){
            //stream.close();
        }
        trace(byte.length);
        showImage();
    }

    public function showImage():void {
        if (stream.connected){
            stream.readBytes(byte, byte.length);
        }
        _loader.unload();
        _loader.loadBytes(byte);
    }

     加载完成事件

    public function streamComplete(e:Event):void {  
        stream.removeEventListener(Event.COMPLETE, streamComplete);  
        var byte:ByteArray = new ByteArray();  
        stream.readBytes(byte);  
          
        loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoaderHandler);  
        loader.loadBytes(ba);  
        stream.close();  
    }  
    private function onLoaderHandler(e:Event):void{  
        e.target.removeEventListener(Event.COMPLETE,onLoaderHandler);  

    2、URLStream对象包含的加载数据是ByteArray类型,需要使用ByteArray的相关方法读取。

    1.若加载的网页采用了“UTF-8”的编码方式,所以可以直接使用readMultiByte()方法输出字符串。对于一些动态内容,URLStream加载时,不能获得文件的大小,只能计算已加载的数据量。如果网络阻塞或者连接极其缓慢,则加载即使很长时间都不能成功,也难以捕获消息。为了防止异常,应设定一个计时器追踪URLStream的加载情况。

    2.可以使用URLStream读取远程的图像,需将urlstream字节数指定到bytearray中,在通过loader.loadBytes()加载获取

    3.PNG可以使用PNGDeconder.decodeImage(bytes)转换BitmapData数据

    JPG图像时压缩存储的,在未经解码之前,不能直接作为像素值,因此也无法写入BitmapData

     (图片是JPG格式,但它不一定是支持渐进加载的,PS中保存图片时有选项。
    Loader不管是否加载完成都可以加入显示列表) 
  • 相关阅读:
    彻底解决Spring MVC 中文乱码 问题
    侯捷 c++面向对象程序设计
    folly学习心得(转)
    vcpkg —— VC++ 打包工具
    Windows下安装GCC
    Linux下编写 makefile 详细教程
    侯捷stl学习笔记链接
    《Effective C++(第三版)》-笔记
    CentOS 7 安装Boost 1.61
    Windbg查看w3wp进程占用的内存及.NET内存泄露,死锁分析
  • 原文地址:https://www.cnblogs.com/xcai/p/2387403.html
Copyright © 2020-2023  润新知