使用 UILoader 组件

UILoader 组件是一个容器,可显示 SWF、JPEG、渐进式 JPEG、PNG 和 GIF 文件。每当需要从远程位置检索内容并将其拖到 Flash 应用程序中时,您都可以使用 UILoader。例如,您可以使用 UILoader 在表单中添加公司徽标(JPEG 文件)。也可以在显示照片的应用程序中使用 UILoader 组件。使用 load() 方法加载内容;使用 percentLoaded 属性确定已加载内容的多少;使用 complete 事件确定何时完成加载。

您可以缩放 UILoader 的内容,或者调整 UILoader 自身的大小来匹配内容的大小。默认情况下,将缩放内容以适应 UILoader。您也可以在运行时加载内容并监控加载进度(不过内容加载一次后会被缓存,所以进度会快速跳进到 100%)。在 UILoader 中加载内容时,如果指定位置,必须将位置(X 和 Y 坐标)指定为 0, 0。

与 UILoader 组件的用户交互

UILoader 组件不能获得焦点。但是,UILoader 组件中加载的内容可以接受焦点,并且可以有自己的焦点交互操作。有关控制焦点的详细信息,请参阅 《用于 Adobe® Flash® Professional CS5 的 ActionScript® 3.0 参考》 中的 FocusManager 类以及 使用 FocusManager

UILoader 组件参数

您可以在“属性”检查器或“组件”检查器中为每个 UILoader 组件实例设置下列创作参数: autoLoad maintainAspectRatio source scaleContent 。其中每个参数都有对应的同名 ActionScript 属性。

每个 UILoader 实例的实时预览反映在创作过程中对“属性”检查器或“组件”检查器中的参数所做的更改。

您可以编写 ActionScript,通过利用 UILoader 实例的方法、属性和事件来设置该实例的其他选项。有关详细信息,请参阅 《用于 Adobe® Flash® Professional CS5 的 ActionScript® 3.0 参考》 中的 UILoader 类。

创建具有 UILoader 组件的应用程序

以下过程说明如何在创作时将 UILoader 组件添加到应用程序中。在本示例中,加载器加载一个徽标的 GIF 图像。

  1. 创建一个新的 Flash (ActionScript 3.0) 文档。

  2. 从“组件”面板将 UILoader 组件拖到舞台上。

  3. 在“属性”检查器中,输入实例名称 aUI

  4. 在舞台上和“组件”检查器中选择加载器,然后为 source 参数输入 http://www.helpexamples.com/images/logo.gif

使用 ActionScript 创建 UILoader 组件实例

本示例使用 ActionScript 创建 UILoader 组件,并加载一个花朵的 JPEG 图像。当 complete 事件发生时,它将在“输出”面板中显示已加载的字节数。

  1. 创建一个新的 Flash (ActionScript 3.0) 文档。

  2. 从“组件”面板将 UILoader 组件拖到“库”面板中。

  3. 打开“动作”面板,在主时间轴中选择第 1 帧,然后输入以下 ActionScript 代码:

    import fl.containers.UILoader; 
     
    var aLoader:UILoader = new UILoader(); 
    aLoader.source = "http://www.flash-mx.com/images/image1.jpg"; 
    aLoader.scaleContent = false; 
    addChild(aLoader); 
     
    aLoader.addEventListener(Event.COMPLETE, completeHandler); 
    function completeHandler(event:Event) { 
        trace("Number of bytes loaded: " + aLoader.bytesLoaded); 
    }
  4. 选择“控制”>“测试影片”。