包 | fl.rsl |
类 | public class RSLPreloader |
继承 | RSLPreloader EventDispatcher Object |
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS5 |
运行时版本: | Flash Player 10.1, AIR 2 |
RSLEvent.RSL_LOAD_COMPLETE
、RSLErrorEvent.RSL_LOAD_FAILED
或 RSLEvent.RSL_PROGRESS
)来指示 RSL 文件的加载状态。
相关 API 元素
属性 | 由以下参数定义 | ||
---|---|---|---|
constructor : Object
对类对象或给定对象实例的构造函数的引用。 | Object | ||
debugWaitTime : int
将此值设置为在下载第一个 RSL 文件之前等待的毫秒数。 | RSLPreloader | ||
numRSLInfos : int [只读]
通过 addRSLInfo() 添加的 RSLInfo 实例数。 | RSLPreloader |
方法 | 由以下参数定义 | ||
---|---|---|---|
RSLPreloader(mainTimeline:MovieClip = null)
构造函数。 | RSLPreloader | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。 | EventDispatcher | ||
向要下载的 SWF 文件或 SWZ 文件添加说明性 RSLInfo 记录。 | RSLPreloader | ||
将事件调度到事件流中。 | EventDispatcher | ||
在指定的索引处,获取通过 addRSLInfo() 添加的 RSLInfo 记录。 | RSLPreloader | ||
检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。 | EventDispatcher | ||
表示对象是否已经定义了指定的属性。 | Object | ||
表示 Object 类的实例是否在指定为参数的对象的原型链中。 | Object | ||
当为 start() 方法提供内容类名称时,会从包装 SWF 的第 2 帧调用 loadContent 方法。 | RSLPreloader | ||
表示指定的属性是否存在、是否可枚举。 | Object | ||
从 EventDispatcher 对象中删除侦听器。 | EventDispatcher | ||
设置循环操作动态属性的可用性。 | Object | ||
开始下载 RSL 文件。 | RSLPreloader | ||
返回此对象的字符串表示形式,其格式设置遵守区域设置特定的约定。 | Object | ||
返回指定对象的字符串表示形式。 | Object | ||
返回指定对象的原始值。 | Object | ||
检查是否用此 EventDispatcher 对象或其任何祖代为指定事件类型注册了事件侦听器。 | EventDispatcher |
事件 | 摘要 | 由以下参数定义 | ||
---|---|---|---|---|
[广播事件] Flash Player 或 AIR 应用程序获得操作系统焦点并变为活动状态时将调度此事件。 | EventDispatcher | |||
[广播事件] Flash Player 或 AIR 应用程序失去操作系统焦点并变为非活动状态时将调度此事件。 | EventDispatcher | |||
当所有 RSL 已完成加载时由 RSLPreloader 调度。 | RSLPreloader | |||
当所有 RSL 已完成下载并且其中一个或多个 RSL 下载失败时由 RSLPreloader 调度。 | RSLPreloader | |||
由 RSLPreloader 调度,指示 RSL 文件的下载进度。 | RSLPreloader |
debugWaitTime | 属性 |
debugWaitTime:int
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS5 |
运行时版本: | Flash Player 10.1, AIR 2 |
将此值设置为在下载第一个 RSL 文件之前等待的毫秒数。这是模拟最终用户体验和测试预加载循环的一种方法。此方法在测试已签名的缓存 RSL(SWZ 文件)时尤其有用,用于在不刷新 SWZ 缓存的情况下构建加载延迟。在部署之前禁用任何将此值设置为大于 0 的代码。使用调试配置常数(例如 CONFIG::DEBUG
)调用该代码。另一建议是将延迟设置为相对较大的值(例如 5000,等于 5 秒)作为删除调试代码的提醒。对于通过编写自动生成的 RSLLoader 实例,可通过在加载动画 SWF 或主时间轴代码中定义 setRSLPreloader(value:RSLPreloader):void
方法设置延迟。
import fl.rsl.RSLPreloader; function setRSLPreloader(preloader:RSLPreloader):void { preloader.debugWaitTime = 10000; }
默认值为 0。
实现
public function get debugWaitTime():int
public function set debugWaitTime(value:int):void
numRSLInfos | 属性 |
numRSLInfos:int
[只读] 语言版本: | ActionScript 3.0 |
产品版本: | Flash CS5 |
运行时版本: | Flash Player 10.1, AIR 2 |
通过 addRSLInfo()
添加的 RSLInfo 实例数。
for(var i:int = 0; i < myPreloader.numRSLInfos; i++) { trace('rsl ' + i); var urls:Array = myPreloader.getRSLInfoAt(i).rslURLs; for(var j:int = 0; j < urls.length; j++) { trace(' url: ' + urls[j]); } }
实现
public function get numRSLInfos():int
相关 API 元素
RSLPreloader | () | 构造函数 |
addRSLInfo | () | 方法 |
public function addRSLInfo(info:RSLInfo):void
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS5 |
运行时版本: | Flash Player 10.1, AIR 2 |
向要下载的 SWF 文件或 SWZ 文件添加说明性 RSLInfo 记录。
import fl.rsl.RSLInfo; var info:RSLInfo = new RSLInfo(); info.addEntry('rsl.swf'); myPreloader.addRSLInfo(info); myPreloader.start();
参数
info:RSLInfo |
getRSLInfoAt | () | 方法 |
public function getRSLInfoAt(index:int):RSLInfo
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS5 |
运行时版本: | Flash Player 10.1, AIR 2 |
在指定的索引处,获取通过 addRSLInfo()
添加的 RSLInfo 记录。索引与通过 addRSLInfo()
添加记录的顺序相对应。
for (var i:int = 0; i < myPreloader.numRSLInfos; i++) { trace('rsl ' + i); var urls:Array = myPreloader.getRSLInfoAt(i).rslURLs; for (var j:int = 0; j < urls.length; j++) { trace(' url: ' + urls[j]); } }
参数
index:int |
RSLInfo |
相关 API 元素
loadContent | () | 方法 |
start | () | 方法 |
public function start(preloaderAnimClass:Class = null, contentClassName:String = null):void
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS5 |
运行时版本: | Flash Player 10.1, AIR 2 |
开始下载 RSL 文件。在通过 addRSLInfo()
添加完所有 RSLInfo 记录之前,不应调用此函数。在自动编写输出代码时,可以使用两个可选参数。第一个是用于加载预加载器 SWF 动画的 ByteArray 子类。第二个是内容 SWF 的 ByteArray 子类的名称。这些参数通常不用于最终用户编写的代码。
参数
preloaderAnimClass:Class (default = null )
| |
contentClassName:String (default = null )
|
相关 API 元素
rslLoadComplete | 事件 |
fl.events.RSLEvent
属性 RSLEvent.type =
fl.events.RSLEvent.RSL_LOAD_COMPLETE
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS5 |
运行时版本: | Flash Player 10.1, AIR 2 |
当所有 RSL 已完成加载时由 RSLPreloader 调度。
当成功下载所有 RSL 后由RSLPreloader
调度的事件。对于此事件类型,bytesLoaded
和 bytesTotal
属性始终为 0。当使用自定义事件循环进行预加载时,用户内容必须侦听此事件来确定何时退出加载动画循环。
此事件具有以下属性:
属性 | 值 |
---|---|
bubbles | true |
cancelable | false ;没有要取消的默认行为。 |
currentTarget | 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
target | 要添加到显示列表中的 DisplayObject 实例。target 不一定是显示列表中注册此事件侦听器的对象。请使用 currentTarget 属性来访问显示列表中当前正在处理此事件的对象。 |
rslsLoaded | 已成功下载的文件数。 |
rslsFailed | 下载失败的文件数。 |
rslsTotal | 已下载的总文件数(无论成功与否)。 |
bytesLoaded | 已成功下载文件的下载字节总数。 |
bytesTotal | 已下载文件的下载字节总数(无论成功与否)。 |
import fl.events.RSLEvent; myPreloader.addEventListener(RSLEvent.RSL_LOAD_COMPLETE, loadComplete); function loadComplete(e:RSLEvent) { gotoAndPlay('startOfContent'); }
rslLoadFailed | 事件 |
fl.events.RSLErrorEvent
属性 RSLErrorEvent.type =
fl.events.RSLErrorEvent.RSL_LOAD_FAILED
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS5 |
运行时版本: | Flash Player 10.1, AIR 2 |
当所有 RSL 已完成下载并且其中一个或多个 RSL 下载失败时由 RSLPreloader 调度。
当所有 RSL 已完成下载并且其中一个或多个 RSL 下载失败时由RSLPreloader
调度的错误。当使用自定义事件循环进行预加载时,用户内容必须侦听此事件来确定何时退出加载动画循环。
此事件具有以下属性:
属性 | 值 |
---|---|
bubbles | true |
cancelable | false ;没有要取消的默认行为。 |
currentTarget | 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
target | 要添加到显示列表中的 DisplayObject 实例。target 不一定是显示列表中注册此事件侦听器的对象。请使用 currentTarget 属性来访问显示列表中当前正在处理此事件的对象。 |
rslsLoaded | 已成功下载的文件数。 |
rslsFailed | 下载失败的文件数。 |
rslsTotal | 已下载的总文件数(无论成功与否)。 |
failedURLs | 下载失败的一组文件。 |
import fl.events.RSLErrorEvent; myPreloader.addEventListener(RSLErrorEvent.RSL_LOAD_FAILED, rslLoadFailedHandler); function rslLoadFailedHandler(e:RSLErrorEvent) { gotoAndPlay('rslLoadFailure'); }
rslProgress | 事件 |
fl.events.RSLEvent
属性 RSLEvent.type =
fl.events.RSLEvent.RSL_PROGRESS
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS5 |
运行时版本: | Flash Player 10.1, AIR 2 |
由 RSLPreloader 调度,指示 RSL 文件的下载进度。
RSLPreloader
调度的事件可指示下载 RSL 文件的进度。这是唯一一种 bytesLoaded
和 bytesTotal
属性为非零的事件类型。
此事件具有以下属性:
属性 | 值 |
---|---|
bubbles | true |
cancelable | false ;没有要取消的默认行为。 |
currentTarget | 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
target | 要添加到显示列表中的 DisplayObject 实例。target 不一定是显示列表中注册此事件侦听器的对象。请使用 currentTarget 属性来访问显示列表中当前正在处理此事件的对象。 |
rslsLoaded | 已成功下载的文件数。 |
rslsFailed | 下载失败的文件数。 |
rslsTotal | 已下载的总文件数(无论成功与否)。 |
bytesLoaded | 已成功下载文件的下载字节总数。 |
bytesTotal | 已下载文件的下载字节总数(无论成功与否)。 |
import fl.events.RSLEvent; myPreloader.addEventListener(RSLEvent.RSL_PROGRESS, progressHandler); function progressHandler(e:RSLEvent) { trace('rslsLoaded = ' + e.rslsLoaded); trace('rslsFailed = ' + e.rslsFailed); trace('rslsTotal = ' + e.rslsTotal); trace('bytesLoaded = ' + e.bytesLoaded); trace('bytesTotal = ' + e.bytesTotal); }
Tue Jun 12 2018, 11:04 AM Z