为大量图像设置Flex / AIR项目结构?

时间:2011-09-29 18:59:22

标签: css flex flex4 air swc

我们在Flex 4.5.1和AIR 2.7中构建原型和演示应用程序,以供移动和桌面使用。这些往往涉及大量的全屏.PNG文件。最近,我们一直在研究如何对代码进行细分,以实现灵活性和多屏幕重用。

人们对分割项目和库有什么建议,以便编译时间最短,图像很容易替换?

1 个答案:

答案 0 :(得分:0)

想到几种策略:

  • 将资产从内联[Embed]语句外部化为使用CSS文件。
  • 配置CSS以编译为单独的SWF,并在运行时加载它。这应该最小化编译器在正常编译过程中执行的PNG编码量。
  • 如果仍然没有加快速度(我发现增量编译器有时会混淆并重新编码嵌入式资产,从而导致编译器速度下降),将CSS文件完全移动到一个单独的项目中。 / LI>

此选项更为可取,因为在运行时加载图像可以让您在多屏幕项目中获得更好的灵活性。

可替换地:

  • 如果出于某种原因使用CSS不是一个选项,请将[Embed]从主项目移动到单独的SWC项目,并将它们嵌入到类中。
  • 将swc添加为依赖项目
  • 通过类引用资产。

例如:

// assets-project/src/Images.as
public class Images {
    [Embed('/assets/img/defaultAvatar.png')]
    public static var defaultAvatar:Object;
}


// main-project/src/SomeView.mxml
<s:BitmapImage source="{Images.defaultAvatar"} />