組件 UILoader 載入圖檔

由 UILoader 物件指定載入內容,可以是 SWF 或影像檔案位址字串、類別名稱、顯示物件的參考、或同輩的影片片段實體參考; UILoader 物件內含 Loader 物件,提供比 Loader 物件更容易操作的介面,實際下載的作業仍是由 Loader 處理。

UILoader 類別與物件 - fl.containers 套件

建構 UILoader 物件

從組件視窗將 UILoader 組件加入元件庫,
  1. import fl.containers.*;
  2. var ldr:UILoader=new UILoader();
  3. ldr.source=物件實體參考或載入檔位址的字串;
  4. addChild(ldr);
另外,也可從組件視窗將 UILoader 組件放入舞台,為 UILoader 實體命名,並在組件檢測器視窗的參數標籤中指定屬性。

UILoader 的屬性與方法

UILoader 繼承 UIComponent
[屬性]
source
  • SWF 或影像檔案位址 (uri) 字串、元件庫中影片片段的擴充類別名稱、顯示物件的參考、或同輩的影片片段實體參考。
  • source:Object [讀寫] ,預設值為 null 。
  • ldr.source="images/sample.jpg" //指定 ldr 物件載入來源檔為 sample.jpg 。
scaleContent
  • 指出載入的物件自動縮放到 UILoader 物件範圍內,或是不理會 UILoader 大小,以預設尺寸顯示。 載入 swf 動畫由於初始尺寸經常是難以判定,指定為 false 可避免無法預期的扭曲變形。
  • scaleContent:Boolean [讀寫] ,預設值為 true 。
  • ldr.scaleContent=false //載入的物件不自動縮放到 ldr 物件的範圍內。
maintainAspectRatio
  • scaleContent=true 指定載入物件自動縮放到 UILoader 物件範圍時,指出維持原始寬高比例縮放至 UILoader 範圍內,或是強制縮放至符合 UILoader 物件尺寸。 (Adobe 官方說明指定 scaleContent=false 的說法應是錯誤的)
  • maintainAspectRatio:Boolean [讀寫] ,預設值為 true 。
  • ldr.maintainAspectRatio=false //載入的物件縮放至符合 ldr 物件尺寸。
autoLoad
  • 指出 UILoader 物件是否會自動載入指定的內容;須在載入前 (source 或 load) 定義。
  • autoLoad:Boolean [讀寫] ,預設值為 true 。
  • ldr.autoLoad=false // ldr 物件不會自動載入指定的內容。
percentLoaded
  • 表示載入外部檔時,已載入的百分比數 0 ~ 100 ;載入如為非外部資源,屬性值保持為 0 。
  • percentLoaded:Number [唯讀] ,預設值為 0 。
  • lb.text=Math.floor(ldr.percentLoaded)+"%" // lb 物件顯示 ldr 物件載入進行的百分比進度。
content
  • 表示載入內容的根顯示物件,當然在載入完成後才會產生。
  • content:DisplayObject [唯讀] ,預設值為 null 。
  • ldr.content.alpha=.5 // 將 ldr 物件載入的內容指定為半透明。
[方法]
setSize()
  • 指定寬高參數來調整 UILoader 物件的尺寸。
  • override public function setSize(w:Number, h:Number):void
  • ldr.setSize(300,200) // 改變 ldr 物件的寬高尺寸。
load()
  • 執行下載指定的內容,如果未指定 request 參數,則使用 source 屬性的定義。
  • public function load(request:URLRequest = null, context:LoaderContext = null):void
    • request : 取得載入檔位址的 URLRequest 物件。
    • context : 以 LoaderContext 物件指出對載入物件的相關驗證原則。
  • ldr.load(uriAt) // ldr 物件載入 uriAt 物件取得位址的外部檔。
[事件]
complete
  • 代表內容載入完成時的事件。
  • 建議使用 Event.COMPLETE 靜態常數代表。
progress
  • 代表內容正在進行載入時的事件。
  • 建議使用 ProgressEvent.PROGRESS 靜態常數代表。