【问题标题】:Using skins without embeding in css doc and swf in flex在 flex 中使用不嵌入 css doc 和 swf 的皮肤
【发布时间】:2026-02-03 15:30:01
【问题描述】:

我遇到的问题是创建一个应用程序,其中几乎每个组件都使用 CSS 皮肤。大多数组件都使用以下方法进行蒙皮: 嵌入(source="file.png"); 方法。我遇到的问题是 flex 试图将所有嵌入的资产编译到最终的 swf 中。就目前而言,我编译的 swf 大约为 16mb!@@ OUCH。这是一个非常大的应用程序,但不是那么大。关于如何在运行时或根据请求将资产加载到应用程序中的任何想法?

【问题讨论】:

    标签: apache-flex flash actionscript-3 skins


    【解决方案1】:

    AFAIK 没有一种简单的方法可以在运行时动态加载皮肤资源。最有可能的问题是 PNG 没有得到很好的优化。在 Flex 中使用它们之前,您可以手动优化它们。或者您可以尝试 Joa 的 Apparat tool,它会自动优化 SWF 中的图像。或者可能更痛苦的选择是从位图切换到矢量图。

    【讨论】:

      【解决方案2】:

      谢谢! 我确实浏览并重做了许多图像。事实证明,我正在为其他矢量皮肤导入多个 swc 文件。 Flex 不喜欢这样的编译时间,并且不断吐出“内存不足”错误。此外,我还为组件使用了两个不必要的名称空间,现在已经清理了。编译器现在运行良好,一切运行顺利。感谢您的帮助!

      【讨论】: