Flex显示GIF动画
??? 至Flex4.5,Adobe Flex都没有对GIF动画图片提供支持。Adobe官方说明需要将GIF动画图片转换成SWF来在Flex里用.Adobe却是挺霸道的。
?? AS3GIF是一个开源的项目,可以直接的播放GIF的动画,googleCode地址:http://code.google.com/p/as3gif/
但是经过测试发现加载比较大的GIF动态图片会很卡,不过还是挺好用的。
??
?? Flash Builder 与Flash cs是可以互补的,利用Flash cs很容易的把gif图片转化为swf资源文件。在flex中我们这样这样引用
??
<mx:Image id="logo" source="@Embed(source='images/flex/loading.swf', symbol='LoadingImage')"/>
?
symbol就是一个实例的id。这样image就可以显示动画了。
?
?
? 注意:本文所说的是mx中的Image才可以显示动画,spark中的Image组件是不支持显示动画的,主要原因在于mx中的Image继承自SWFLoader,功能比较强大,spark中的Image是一个spark的容器皮肤,图像资源用BitmapImage保存,功能有限,不支持显示动画。
如果想在spark组件中使用swf中的动画资源,则可以按照下面的处理方法
?
<s:SWFLoader source="@Embed(source='css/loading.swf', symbol='loading')"/>
?
??另外一种写法如下:
?
?
?? ?Embed("icons.swf#bullet_delete")]
?
?
?
有关这两者之间的详细区别,请关注我的博客。
?
?
?
?
?