套件 | 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 | ||
將描述性 RSLInfo 記錄新增至正在下載的 SWF 或 SWZ 檔案中。 | RSLPreloader | ||
會將事件傳送到事件流程。 | EventDispatcher | ||
取得透過 addRSLInfo() 在指定索引新增的 RSLInfo 記錄。 | RSLPreloader | ||
會檢查 EventDispatcher 物件是否有對特定的事件類型註冊偵聽程式。 | EventDispatcher | ||
指出物件是否有已定義的指定屬性。 | Object | ||
指出 Object 類別的實體是否位於指定為參數的物件原型鏈中。 | Object | ||
當提供類別名稱給 start() 方法時,loadContent 方法是從包裝函式 SWF 的第 2 個影格呼叫的。 | RSLPreloader | ||
指出指定的屬性是否存在,以及是否可列舉。 | Object | ||
會從 EventDispatcher 物件移除偵聽程式。 | EventDispatcher | ||
為迴圈作業設定動態屬性的可用性。 | Object | ||
開始下載 RSL 檔案。 | RSLPreloader | ||
傳回代表此物件的字串,根據地區特定慣例進行格式化。 | Object | ||
會傳回指定之物件的字串形式。 | Object | ||
會傳回指定之物件的基本值。 | Object | ||
檢查此 EventDispatcher 物件是否已註冊事件偵聽程式,或者此物件的任何祖系已為特定事件類型註冊事件偵聽程式。 | EventDispatcher |
事件 | 摘要 | 定義自 | ||
---|---|---|---|---|
[廣播事件] 當 Flash Player 或 AIR 應用程式取得作業系統焦點並成為作用中時傳送。 | EventDispatcher | |||
[廣播事件] 當 Flash Player 或 AIR 應用程式失去作業系統焦點並成為非作用中時傳送。 | EventDispatcher | |||
當所有 RSL 完成下載後,由 RSLPreloader 傳送。 | RSLPreloader | |||
當 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 |
將描述性 RSLInfo 記錄新增至正在下載的 SWF 或 SWZ 檔案中。
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 記錄之前,不可以呼叫這函數。 自動編寫輸出程式碼時,會使用兩個選用引數。檔案是一個 ByteArray 子類別,用於載入預先載入器 SWF 動畫。第二個是內容 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 完成下載但有一或多個檔案失敗時,由 RSLPreloader 傳送。
當 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
屬性不為 0 的唯一事件類型。
這個事件具有下列屬性:
屬性 | 值 |
---|---|
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, 03:47 PM Z