flash.display
public class LoaderInfo
继承LoaderInfo Inheritance EventDispatcher Inheritance Object

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

LoaderInfo 类可提供有关已加载的 SWF 文件或图像文件(JPEG、GIF 或 PNG)的信息。 LoaderInfo 对象可用于任何显示对象。 提供的信息包括加载进度、加载程序的 URL 和加载内容、媒体的字节总数以及媒体的标示的高度和宽度。

您可以通过以下两种方法访问 LoaderInfo 对象:

Loader 对象的 contentLoaderInfo 属性提供有关 Loader 对象正在加载的内容的信息,而 DisplayObject 的 loaderInfo 属性提供有关该显示对象的根 SWF 文件的信息。

使用 Loader 对象(SWF 文件或位图)加载的对象的 loaderInfo 属性引用与 Loader 对象的 contentLoaderInfo 属性相同的 LoaderInfo 对象。 换句话说,LoaderInfo 对象是加载的对象文件与加载它的 Loader 对象之间的共享对象。 由于 SWF 文件的主类的实例没有 Loader 对象,因此 loaderInfo 属性是访问 SWF 文件主类实例的 LoaderInfo 的唯一方法。

下图显示了对于 SWF 文件主类实例、Loader 对象的 contentLoaderInfo 属性以及加载对象的 loaderInfo 属性,LoaderInfo 对象的不同用法:

在加载操作未完成时,Loader 对象的 contentLoaderInfo 属性的某些属性不可用。 您可以获得某些属性,如 bytesLoadedbytesTotalurlloaderURLapplicationDomain。 当 loaderInfo 对象调度 init 事件时,您可以访问 loaderInfo 对象以及加载的图像或 SWF 文件的所有属性。

注意:LoaderInfo 对象的所有属性都是只读的。

Loaderinfo 类从 EventDispatcher 类继承的 EventDispatcher.dispatchEvent() 方法不适用于 LoaderInfo 对象。 如果在 LoaderInfo 对象上调用 dispatchEvent(),将引发 IllegalOperationError 异常。

查看示例

另请参见

flash.display.Loader
flash.display.Loader.content
flash.display.DisplayObject
flash.display.DisplayObject.loaderInfo
监视加载进度



公共 属性
 属性定义方
  actionScriptVersion : uint
[read-only] 被加载的 SWF 文件的 ActionScript 版本。
LoaderInfo
  applicationDomain : ApplicationDomain
[read-only] 加载外部 SWF 文件后,包含在已加载类中的所有 ActionScript 3.0 定义将存储在 applicationDomain 属性中。
LoaderInfo
  bytesLoaded : uint
[read-only] 媒体已加载的字节数。
LoaderInfo
  bytesTotal : uint
[read-only] 整个媒体文件中压缩的字节数。
LoaderInfo
  childAllowsParent : Boolean
[read-only] 表示内容(子级)对加载者(父级)的信任关系。
LoaderInfo
 Inheritedconstructor : Object
对类对象或给定对象实例的构造函数的引用。
Object
  content : DisplayObject
[read-only] 与此 LoaderInfo 对象关联的已加载对象。
LoaderInfo
  contentType : String
[read-only] 被加载文件的 MIME 类型。
LoaderInfo
  frameRate : Number
[read-only] 被加载的 SWF 文件的标示的帧频,以每秒帧数为单位。
LoaderInfo
  height : int
[read-only] 加载文件的标示的高度。
LoaderInfo
  loader : Loader
[read-only] 与此 LoaderInfo 对象关联的 Loader 对象。
LoaderInfo
  loaderURL : String
[read-only] SWF 文件的 URL,该 SWF 文件启动对此 LoaderInfo 对象所描述的媒体的加载。
LoaderInfo
  parameters : Object
[read-only] 包含名称-值对的对象,表示为被加载的 SWF 文件提供的参数。
LoaderInfo
  parentAllowsChild : Boolean
[read-only] 表示加载者(父级)对内容(子级)的信任关系。
LoaderInfo
 Inheritedprototype : Object
[static] 对类或函数对象的原型对象的引用。
Object
  sameDomain : Boolean
[read-only] 表示加载者和内容之间的域关系:如果它们具有相同的原始域,则为 true;否则为 false。
LoaderInfo
  sharedEvents : EventDispatcher
[read-only] EventDispatcher 实例,可用于跨安全边界交换事件。
LoaderInfo
  swfVersion : uint
[read-only] 已加载的 SWF 文件的文件格式版本。
LoaderInfo
  url : String
[read-only] 所加载媒体的 URL。
LoaderInfo
  width : int
[read-only] 被加载内容的标示的宽度。
LoaderInfo
公共 方法
 方法定义方
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。
EventDispatcher
 Inherited
将事件调度到事件流中。
EventDispatcher
 Inherited
检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。
EventDispatcher
 Inherited
指示对象是否已经定义了指定的属性。
Object
 Inherited
指示 Object 类的实例是否在指定为参数的对象的原型链中。
Object
 Inherited
指示指定的属性是否存在、是否可枚举。
Object
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
从 EventDispatcher 对象中删除侦听器。
EventDispatcher
 Inherited
设置循环操作动态属性的可用性。
Object
 Inherited
返回指定对象的字符串表示形式。
Object
 Inherited
返回指定对象的原始值。
Object
 Inherited
检查是否用此 EventDispatcher 对象或其任何始祖为指定事件类型注册了事件侦听器。
EventDispatcher
事件
 事件摘要定义方
 Inherited Flash Player 获得操作系统焦点并变为活动状态时调度。EventDispatcher
   成功加载数据后调度。LoaderInfo
 Inherited Flash Player 失去操作系统焦点并变为非活动状态时调度。EventDispatcher
   在通过 HTTP 发出网络请求并且 Flash Player 可以检测到 HTTP 状态代码时调度。LoaderInfo
   已加载的 SWF 文件的属性和方法可访问时调度。LoaderInfo
   在发生导致加载操作失败的输入或输出错误时调度。LoaderInfo
   在加载操作开始时调度。LoaderInfo
   在下载操作过程中收到数据时调度。LoaderInfo
   每次使用 Loader 对象的 unload() 方法删除已加载对象时,或者当同一 Loader 对象执行第二次加载并且在加载开始之前删除了原始内容时,由 LoaderInfo 对象调度。LoaderInfo
属性详细信息
actionScriptVersion属性
actionScriptVersion:uint  [read-only]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

被加载的 SWF 文件的 ActionScript 版本。 通过使用 ActionScriptVersion 类中的枚举(如 ActionScriptVersion.ACTIONSCRIPT2ActionScriptVersion.ACTIONSCRIPT3)来指定语言版本。

注意:此属性始终具有值 ActionScriptVersion.ACTIONSCRIPT2ActionScriptVersion.ACTIONSCRIPT3。 ActionScript 1.0 和 2.0 都被报告为 ActionScriptVersion.ACTIONSCRIPT2(版本 2.0)。 此属性只对 ActionScript 1.0 和 2.0 与 ActionScript 3.0 进行区分。


实现
    public function get actionScriptVersion():uint

引发
Error — 如果文件未完整下载,不足以检索到所请求的信息。
 
Error — 如果文件不是 SWF 文件。

另请参见

applicationDomain属性 
applicationDomain:ApplicationDomain  [read-only]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

加载外部 SWF 文件后,包含在已加载类中的所有 ActionScript 3.0 定义将存储在 applicationDomain 属性中。

SWF 文件中的所有代码被定义为存在于应用程序域中。 主应用程序就在当前的应用程序域中运行。 系统域中包含所有应用程序域(包括当前域),这意味着它包含所有 Flash Player 类。

所有应用程序域(系统域除外)都有关联的父域。 主应用程序的 applicationDomain 的父域为系统域。 已加载的类仅在其父级中没有相关定义时才进行定义。 不能用较新的定义覆盖已加载的类定义。

有关应用程序域的用法示例,请参阅《ActionScript 3.0 编程》中的“客户端系统环境”一章。


实现
    public function get applicationDomain():ApplicationDomain

引发
SecurityError — 不允许调用方的此安全沙箱访问此 ApplicationDomain。

另请参见

bytesLoaded属性 
bytesLoaded:uint  [read-only]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

媒体已加载的字节数。 如果此数字与 bytesTotal 的值相等,则会加载所有字节。


实现
    public function get bytesLoaded():uint
bytesTotal属性 
bytesTotal:uint  [read-only]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

整个媒体文件中压缩的字节数。

在此 LoaderInfo 对象相应的 Loader 对象调度第一个 progress 事件之前,bytesTotal 为 0。 在该 Loader 对象调度第一个 progress 事件之后,bytesTotal 反映的是要下载的实际字节数。


实现
    public function get bytesTotal():uint

另请参见

childAllowsParent属性 
childAllowsParent:Boolean  [read-only]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

表示内容(子级)对加载者(父级)的信任关系。 如果子项允许父项访问,则为 true;否则为 false。 如果子对象已调用 allowDomain() 方法将权限授予父域,或者在将权限授予父域的子域加载了跨域策略,则将此属性设置为 true。 如果子级和父级在同一域中,则此属性设置为 true

有关详细信息,请参阅《ActionScript 3.0 编程》中的“Flash Player 安全性”一章。


实现
    public function get childAllowsParent():Boolean

引发
Error — 文件未完整下载而不足以检索到所请求的信息时引发。
content属性 
content:DisplayObject  [read-only]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

与此 LoaderInfo 对象关联的已加载对象。


实现
    public function get content():DisplayObject

引发
SecurityError — 如果由于安全限制的缘故而阻止访问此 API 的对象访问加载的对象。 例如,如果 Loader 对象尝试访问 contentLoaderInfo.content 属性,但未向其授予访问加载的内容的安全权限,则可能会出现此情况。

有关详细信息,请参阅《ActionScript 3.0 编程》中的“Flash Player 安全性”一章。

contentType属性 
contentType:String  [read-only]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

被加载文件的 MIME 类型。 如果所加载的文件内容不足以让 Flash Player 确定类型,则该值为 null。 以下列表给出了可能的值:


实现
    public function get contentType():String
frameRate属性 
frameRate:Number  [read-only]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

被加载的 SWF 文件的标示的帧频,以每秒帧数为单位。 此数字通常是整数,但并不需要是整数。

此值可能与使用时的实际帧频不同。 Flash Player 在任何时候为所有加载的 SWF 文件只使用单个帧频,此帧频由主 SWF 文件的标示的帧频确定。 此外,取决于硬件、声音同步及其它因素,Flash Player 可能无法达到主帧频。


实现
    public function get frameRate():Number

引发
Error — 如果文件未完整下载,不足以检索到所请求的信息。
 
Error — 如果文件不是 SWF 文件。
height属性 
height:int  [read-only]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

加载文件的标示的高度。 此值可能与所显示内容的实际高度不同,因为被加载的内容或其父显示对象可能被缩放。


实现
    public function get height():int

引发
Error — 如果文件未完整下载,不足以检索到所请求的信息。
loader属性 
loader:Loader  [read-only]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

与此 LoaderInfo 对象关联的 Loader 对象。 如果此 LoaderInfo 对象是 SWF 文件的主类实例的 loaderInfo 属性,则没有关联的 Loader 对象。


实现
    public function get loader():Loader

引发
SecurityError — 如果由于安全限制的缘故而阻止访问此 API 的对象访问 Loader 对象。 例如,如果加载的 SWF 文件尝试访问其 loaderInfo.loader 属性,但未向其授予访问正在加载的 SWF 文件的安全权限,则可能会出现此情况。

有关详细信息,请参阅《ActionScript 3.0 编程》中的“Flash Player 安全性”一章。

loaderURL属性 
loaderURL:String  [read-only]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

SWF 文件的 URL,该 SWF 文件启动对此 LoaderInfo 对象所描述的媒体的加载。 对于 SWF 文件的主类的实例,此 URL 与 SWF 文件自己的 URL 相同。


实现
    public function get loaderURL():String
parameters属性 
parameters:Object  [read-only]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

包含名称-值对的对象,表示为被加载的 SWF 文件提供的参数。

可以使用 for-in 循环来提取 parameters 对象中的所有名称和值。

参数的两个源为:主 SWF 文件的 URL 中的查询字符串和 FlashVars HTML 参数(这只影响主 SWF 文件)的值。

parameters 属性替换了 ActionScript 1.0 和 2.0 提供 SWF 文件参数作为主时间轴的技术。

Loader 对象(该对象包含使用 ActionScript 1.0 或 2.0 的 SWF 文件)的 parameters 属性的值为 null。只有对于包含使用 ActionScript 3.0 的 SWF 文件的 Loader 对象,该值才非 null。


实现
    public function get parameters():Object
parentAllowsChild属性 
parentAllowsChild:Boolean  [read-only]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

表示加载者(父级)对内容(子级)的信任关系。 如果父项允许子项访问,则为 true;否则为 false。 如果父对象调用了 allowDomain() 方法将权限授予子域,或者在将权限授予子域的父域加载了跨域策略文件,则将此属性设置为 true。 如果子级和父级在同一域中,则此属性设置为 true

有关详细信息,请参阅《ActionScript 3.0 编程》中的“Flash Player 安全性”一章。


实现
    public function get parentAllowsChild():Boolean

引发
Error — 文件未完整下载而不足以检索到所请求的信息时引发。
sameDomain属性 
sameDomain:Boolean  [read-only]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

表示加载者和内容之间的域关系:如果它们具有相同的原始域,则为 true;否则为 false


实现
    public function get sameDomain():Boolean

引发
Error — 文件未完整下载而不足以检索到所请求的信息时引发。
sharedEvents属性 
sharedEvents:EventDispatcher  [read-only]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

EventDispatcher 实例,可用于跨安全边界交换事件。 即使加载者和被加载者互不信任,它们也都能访问 sharedEvents。


实现
    public function get sharedEvents():EventDispatcher
swfVersion属性 
swfVersion:uint  [read-only]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

已加载的 SWF 文件的文件格式版本。 使用 SWFVersion 类(如 SWFVersion.FLASH7SWFVersion.FLASH9)中的枚举指定文件格式。


实现
    public function get swfVersion():uint

引发
Error — 如果文件未完整下载,不足以检索到所请求的信息。
 
Error — 如果文件不是 SWF 文件。

另请参见

url属性 
url:String  [read-only]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

所加载媒体的 URL。

在此 LoaderInfo 对象的对应 Loader 对象调度第一个 progress 事件之前,url 属性的值可能只反映在对 Loader 对象的 load() 方法的调用中指定的初始 URL。 在第一个 progress 事件之后,url 属性将在解析了任何重定向和相对 URL 后反映媒体的最终 URL。


实现
    public function get url():String

另请参见

width属性 
width:int  [read-only]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

被加载内容的标示的宽度。 此值可能与所显示内容的实际宽度不同,因为被加载的内容或其父显示对象可能被缩放。


实现
    public function get width():int

引发
Error — 如果文件未完整下载,不足以检索到所请求的信息。
事件详细信息
complete 事件
事件对象类型: flash.events.Event
Event.type property = flash.events.Event.COMPLETE

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

成功加载数据后调度。 complete 事件始终在 init 事件之后调度。

定义 complete 事件对象的 type 属性值。

此事件具有以下属性:

属性
bubblesfalse
cancelablefalse;没有要取消的默认行为。
currentTarget当前正在使用某个事件侦听器处理 Event 对象的对象。
target已完成加载的网络对象。

另请参见

httpStatus 事件  
事件对象类型: flash.events.HTTPStatusEvent
HTTPStatusEvent.type property = flash.events.HTTPStatusEvent.HTTP_STATUS

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

在通过 HTTP 发出网络请求并且 Flash Player 可以检测到 HTTP 状态代码时调度。

定义 httpStatus 事件对象的 type 属性值。

此事件具有以下属性:

属性
bubblesfalse
cancelablefalse;没有要取消的默认行为。
currentTarget当前正在使用某个事件侦听器处理 Event 对象的对象。
status由服务器返回的 HTTP 状态代码。
target接收 HTTP 状态代码的网络对象。

另请参见

init 事件  
事件对象类型: flash.events.Event
Event.type property = flash.events.Event.INIT

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

已加载的 SWF 文件的属性和方法可访问时进行调度。 如果存在以下两个条件,则 LoaderInfo 对象将调度 init 事件:

init 事件始终在 complete 事件之前。

定义 init 事件对象的 type 属性值。

此事件具有以下属性:

属性
bubblesfalse
cancelablefalse;没有要取消的默认行为。
currentTarget当前正在使用某个事件侦听器处理 Event 对象的对象。
target与所加载的 SWF 文件相关联的 LoaderInfo 对象。

另请参见

ioError 事件  
事件对象类型: flash.events.IOErrorEvent
IOErrorEvent.type property = flash.events.IOErrorEvent.IO_ERROR

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

在发生导致加载操作失败的输入或输出错误时调度。

定义 ioError 事件对象的 type 属性值。

此事件具有以下属性:

属性
bubblesfalse
cancelablefalse;没有要取消的默认行为。
currentTarget当前正在使用某个事件侦听器处理 Event 对象的对象。
target发生输入/输出错误的网络对象。
text要显示为错误消息的文本。

另请参见

open 事件  
事件对象类型: flash.events.Event
Event.type property = flash.events.Event.OPEN

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

在加载操作开始时调度。

定义 open 事件对象的 type 属性值。

此事件具有以下属性:

属性
bubblesfalse
cancelablefalse;没有要取消的默认行为。
currentTarget当前正在使用某个事件侦听器处理 Event 对象的对象。
target已打开连接的网络对象。

另请参见

progress 事件  
事件对象类型: flash.events.ProgressEvent
ProgressEvent.type property = flash.events.ProgressEvent.PROGRESS

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

在下载操作过程中收到数据时调度。

定义 progress 事件对象的 type 属性值。

此事件具有以下属性:

属性
bubblesfalse
bytesLoaded在侦听器处理事件时加载的项数或字节数。
bytesTotal如果加载进程成功,最终将加载的项目或字节总数。
cancelablefalse;没有要取消的默认行为。
currentTarget当前正在使用某个事件侦听器处理 Event 对象的对象。
target报告进度的网络对象。

另请参见

unload 事件  
事件对象类型: flash.events.Event
Event.type property = flash.events.Event.UNLOAD

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

当使用 Loader 对象的 unload() 方法删除已加载对象时,或者当同一 Loader 对象执行第二次加载并且在加载开始之前删除了原始内容时,由 LoaderInfo 对象调度。

定义 unload 事件对象的 type 属性值。

此事件具有以下属性:

属性
bubblesfalse
cancelablefalse;没有要取消的默认行为。
currentTarget当前正在使用某个事件侦听器处理 Event 对象的对象。
targetLoaderInfo 对象与将被卸载或替换的 SWF 文件相关联。

另请参见

示例 如何使用示例

下例使用 LoaderInfoExample 类在舞台上显示一幅图像。 执行下列步骤可完成此操作:
  1. 属性 url被创建,该属性是图像的位置和名称。
  2. 类构造函数创建一个名为 loader 的 Loader 对象。
  3. loader 对象将事件侦听器进行实例化,以确保图像正确加载。
  4. 构造函数创建一个 URLRequest 对象的新实例 request,该实例带有传递的 url,这样,就可以知道文件的名称和位置。
  5. 然后,request 对象被传递给 loader 对象的 load() 方法,该方法会将图像加载到显示列表上。

重要提示:该示例要求您在编译的 SWF 文件所在的目录中添加一个名为 Image.gif 的文件。 使用具有一个适合主 SWF 文件尺寸的区域的图像。

package {
    import flash.display.Loader;
    import flash.display.LoaderInfo;
    import flash.display.Sprite;
    import flash.events.*;
    import flash.net.URLRequest;

    public class LoaderInfoExample extends Sprite {
        private var url:String = "Image.gif";

        public function LoaderInfoExample() {
            var loader:Loader = new Loader();
            loader.contentLoaderInfo.addEventListener(Event.INIT, initHandler);
            loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
            var request:URLRequest = new URLRequest(url);
            loader.load(request);
            addChild(loader);
        }

        private function initHandler(event:Event):void {
            var loader:Loader = Loader(event.target.loader);
            var info:LoaderInfo = LoaderInfo(loader.contentLoaderInfo);
            trace("initHandler: loaderURL=" + info.loaderURL + " url=" + info.url);
        }

        private function ioErrorHandler(event:IOErrorEvent):void {
            trace("ioErrorHandler: " + event);
        }
    }
}




 

评论添加到页面后给我发送电子邮件 | 评论报告

当前页: http://livedocs.adobe.com/flash/9.0_cn/ActionScriptLangRefV3/flash/display/LoaderInfo.html