我正在构建一个包含大量嵌入式位图等的Flex项目。在Actionscript中获取位图的常用方法似乎是执行类似
的操作 [Bindable] [Embed(source = '../lib/WhiteFencePost.png')]
private static var clsObstacleFencePost : Class;
var bitmap : BitmapAsset = new clsObstacleFencePost();
我已经有几十个这样的东西,到项目完成时我很容易看到数百个这样的东西。有什么办法可以避免为每个位图创建一个类吗?
答案 0 :(得分:1)
尝试使用这样的静态类创建资产管理器。
class AssetManager
{
[Bindable]
[Embed(source = '../lib/WhiteFencePost.png')]
public static var WhiteFencePost:Class;
[Bindable]
[Embed(source = '../lib/BlackFencePost.png')]
public static var BlackFencePost:Class;
}
然后你可以使用像这样的图像
myImage1.source = AssetManager.WhiteFencePost;
myImage2.source = AssetManager.WhiteFencePost;
myImage3.source = AssetManager.WhiteFencePost;
myImage4.source = AssetManager.BlackFencePost;
您无需定义要使用的类图像的新实例。
答案 1 :(得分:0)
有方法...将所有文件打包成zip - embed zip - 用任何zip文件库解压缩动作脚本,然后需要Loader.loadBytes pic。可以枚举Zip内容,因此如果您知道如何按名称处理文件,则在应用程序中甚至不需要文件列表。