跳到主要内容

egret.URLLoader

   egret

   public class URLLoader

继承    egret.URLLoader → egret.EventDispatcheregret.HashObject

URLLoader 类以文本、二进制数据或 URL 编码变量的形式从 URL 下载数据。在下载文本文件、XML 或其他用于动态数据驱动应用程序的信息时,它很有用。URLLoader 对象会先从 URL 中下载所有数据,然后才将数据用于应用程序中的代码。它会发出有关下载进度的通知,通过 bytesLoaded 和 bytesTotal 属性以及已调度的事件,可以监视下载进度。

公共属性

属性
data : any
从加载操作接收的数据
dataFormat : string
控制是以文本 (URLLoaderDataFormat.TEXT)、原始二进制数据 (URLLoaderDataFormat.BINARY) 还是 URL 编码变量 (URLLoaderDataFormat.VARIABLES) 接收下载的数据

公共方法

方法
URLLoader(request:egret.URLRequest)
创建 egret.URLLoader 对象
load(request:egret.URLRequest):void
从指定的 URL 发送和加载数据

事件

Events
egret.Event.COMPLETE
加载完成后调度。
egret.IOErrorEvent.IO_ERROR
加载错误后调度。

属性详细信息

data

data : any = null

  • 支持版本:Egret 2.4
  • 运行平台:Web,Native

从加载操作接收的数据。只有完成加载操作时,才会填充该属性。该数据的格式取决于 dataFormat 属性的设置:如果 dataFormat 属性是 URLLoaderDataFormat.TEXT,则所接收的数据是一个包含已加载文件文本的字符串。如果 dataFormat 属性是 URLLoaderDataFormat.BINARY,则所接收的数据是一个包含原始二进制数据的 ByteArray 对象。如果 dataFormat 属性是 URLLoaderDataFormat.TEXTURE,则所接收的数据是一个包含位图数据的Texture对象。如果 dataFormat 属性是 URLLoaderDataFormat.VARIABLES,则所接收的数据是一个包含 URL 编码变量的 URLVariables 对象。

dataFormat

dataFormat : string = egret.URLLoaderDataFormat.TEXT

  • 支持版本:Egret 2.4
  • 运行平台:Web,Native

控制是以文本 (URLLoaderDataFormat.TEXT)、原始二进制数据 (URLLoaderDataFormat.BINARY) 还是 URL 编码变量 (URLLoaderDataFormat.VARIABLES) 接收下载的数据。如果 dataFormat 属性的值是 URLLoaderDataFormat.TEXT,则所接收的数据是一个包含已加载文件文本的字符串。如果 dataFormat 属性的值是 URLLoaderDataFormat.BINARY,则所接收的数据是一个包含原始二进制数据的 ByteArray 对象。如果 dataFormat 属性的值是 URLLoaderDataFormat.TEXTURE,则所接收的数据是一个包含位图数据的Texture对象。如果 dataFormat 属性的值是 URLLoaderDataFormat.VARIABLES,则所接收的数据是一个包含 URL 编码变量的 URLVariables 对象。

方法详细信息

URLLoader()

public URLLoader(request:egret.URLRequest)

创建 egret.URLLoader 对象

  • 支持版本:Egret 2.4
  • 运行平台:Web,Native
  • 参数
    • request:egret.URLRequest - 一个 URLRequest 对象,指定要下载的 URL。如果省略该参数,则不开始加载操作。如果已指定参数,则立即开始加载操作

load()

public load(request:egret.URLRequest):void

从指定的 URL 发送和加载数据。可以以文本、原始二进制数据或 URL 编码变量格式接收数据,这取决于为 dataFormat 属性所设置的值。请注意 dataFormat 属性的默认值为文本。如果想将数据发送至指定的 URL,则可以在 URLRequest 对象中设置 data 属性。

  • 支持版本:Egret 2.4
  • 运行平台:Web,Native
  • 参数

示例

/*
* 以下示例演示了使用 URLLoader 加载图片资源。
*/
class URLLoaderExample extends egret.DisplayObjectContainer {
public constructor() {
super();
this.startLoad();
}
private startLoad(): void {
//创建 URLLoader 对象
const loader: egret.URLLoader = new egret.URLLoader();
//设置加载方式为纹理
loader.dataFormat = egret.URLLoaderDataFormat.TEXTURE;
//添加加载完成侦听
loader.addEventListener(egret.Event.COMPLETE, this.onLoadComplete, this);
//添加加载失败侦听
loader.addEventListener(egret.IOErrorEvent.IO_ERROR, this.onLoadError, this);
const url: string = "resource/assets/egret_icon.png";
const request: egret.URLRequest = new egret.URLRequest(url);
//开始加载
loader.load(request);
}
private onLoadComplete(event: egret.Event): void {
egret.log("onLoadComplete");
const loader: egret.URLLoader = <egret.URLLoader>event.target;
//获取加载到的纹理对象
const texture: egret.Texture = <egret.Texture>loader.data;
egret.log(texture);
}
private onLoadError(): void {
egret.log("onLoadError");
}
}