【问题标题】:FlashBuilder: how to embed graphics for preloader?FlashBuilder:如何为预加载器嵌入图形?
【发布时间】:2012-03-19 15:13:38
【问题描述】:

我在 FlashBuilder 中开发了一个项目。我在 Flash IDE 中创建的图形和 UI 元素并为它们提供导出类名。然后我将 SWC 放在 FlashBuilder 项目的库路径中,并通过实例化创建 UI 元素。

现在我想为应用程序添加一个预加载器。我关注这篇文章,它有效:

http://pixelpaton.com/?p=4642

我现在的问题是:我还需要一些用于预加载器的图形。但是如何确保先加载预加载器的图形,使预加载器类能够尽快启动呢?

【问题讨论】:

    标签: actionscript-3 flash flash-builder preloader swc


    【解决方案1】:

    编译器会找出你的预加载器类的依赖关系,并首先加载它们。

    例如:

    public function Preloader()
    {
        addChild(new UIElementFromFlash());
    }
    

    Flash Builder 将知道UIElementFromFlash 需要在Preloader 之前加载。只要您有文章中的 Frame 元数据标记,它还将在您的主类及其依赖项之前加载 Preloader

    【讨论】:

      【解决方案2】:

      如果可能的话,我建议制作 2 个 swf 文件。制作一个 loader.swf 来加载您的应用程序 swf 并显示进度和您的加载动画/图形。 在此处查看示例:http://www.republicofcode.com/tutorials/flash/as3preloader/

      然后您必须添加 URLLoader 类并加载您的 application.swf。 试试看这里:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/net/URLLoader.html

      【讨论】:

      • 我当然这么认为 - 但就我对 FlashBuilder、元标记和 swf 编译器如何工作的理解而言,知道如何在单个项目中完成它会很酷
      • 试试看这篇文章,它会帮助你处理元标记:frankieloscavio.blogspot.com/2007/12/…
      • 您可以使用 flex 中的 Embed 标签添加您的图形或其他 swf。
      • 但是我如何控制它的内容是早于还是晚于编译到我的目标中的其他内容加载?
      • 尝试这样做:[Embed(source="applicationSWF")] private var ApplicationClass:Class;这将生成一个名为 ApplicationClass 的类,其内容将是您嵌入的 swf。所以文档类将只有一个加载器。然后,您将在加载完成后尝试添加此类。您不需要控制任何东西,首先将加载文档类依赖项,然后是您的 applicationSWF。这是我知道的唯一方法。
      【解决方案3】:

      就像 Gio 建议的那样,最好有两个 SWF 文件。

      但是,另一种解决方案是使用 Flex 编译器的 -frame two 参数。您的所有定义(代码和资产)都将添加到影片的第二帧,让您的主类可以监听应用程序的加载进度并显示动画。 请注意不要在您的第一帧中引用主应用程序中的任何内容,以防止给它增加更多权重。

      这里有更多关于这种技术的细节: http://www.andymoore.ca/2009/08/flexsdk-3-3-how-to-make-a-flash-preloader-in-as3/

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-12-26
        • 2012-09-10
        • 1970-01-01
        • 2013-11-21
        • 1970-01-01
        • 2015-08-15
        • 2019-12-30
        相关资源
        最近更新 更多