在多个图像之间共享位图数据很容易:
// target and source are instances of the mx.controls.Image class
var content_copy:Bitmap = new Bitmap((source.content as Bitmap).bitmapData);
target.load(content_copy);
但是如何为带有矢量图形的电影剪辑做同样的事情? 我找到的唯一方法是使用另一个影片剪辑的字节数据作为源加载影片剪辑。
target.load(source.content.loaderInfo.bytes);
但实际上它重复了内容。
答案 0 :(得分:1)
无法共享内容(在ActionScript内存中,是否在运行时内存中发生我不确定),但如果您只是想避免加载两次,那么现有的加载字节的解决方案是最好的溶液
但是,如果MovieClip不需要是交互式的,您可以将其绘制到BitmapData并共享该BitmapData。显然,这是否真正优化了您的内存配置文件取决于您需要多少实例以及矢量数据的复杂性。