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")]

 


 

 

有关这两者之间的详细区别,请关注我的博客。

 

 

 

 

 

你可能感兴趣的:(Flex)