`

Flex里播放Gif图片

阅读更多

 

http://www.flexrain.cn/demo/flex/gifplayer.swf

 

Flex里Image控件插入gif动画的图片默认只显示一帧,也就是说是不会动的,我们可以借助GifPlayer类包来实现Flex里插入动画的Gif图片。
GifPlayer下载: http://code.google.com/p/as3gif/
实例里演示了几个常用的功能:播放、停止、到第几帧播放、到第几帧停止。

 

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
    layout="absolute" horizontalAlign="center"
    creationComplete="init();" preloader="com.preload.PreLoad" 
    backgroundColor="0x414141" > 
    <mx:Style source="flex/yfskin/yflexskin.css" />
    <mx:Script>
        <![CDATA[
        import flash.net.URLRequest;
        import org.gif.player.GIFPlayer;
        import org.gif.events.FileTypeEvent;
        import org.gif.events.GIFPlayerEvent;
        import org.gif.events.FrameEvent;
        import org.gif.events.TimeoutEvent;
        private var _myGIFPlayer:GIFPlayer = new GIFPlayer();
        private var _totalFrame:Number;
        //private var _currentFrame:Number;
        
        private function init():void 
        {
            var request:URLRequest = new URLRequest("md.gif");
            _myGIFPlayer.load(request);
            img.addChild(_myGIFPlayer);
            _myGIFPlayer.addEventListener(GIFPlayerEvent.COMPLETE, onCompleteGIF);
            _myGIFPlayer.addEventListener(FrameEvent.FRAME_RENDERED, onFrameRendered);
            //_myGIFPlayer.addEventListener(TimeoutEvent.TIME_OUT, onTimeOut);
        }
        
        private function onCompleteGIF(event:GIFPlayerEvent):void 
        {
            _totalFrame = _myGIFPlayer.totalFrames;
            totalframe.text = String(_totalFrame);
        }
        
        private function onFrameRendered(event:FrameEvent):void 
        {
            currentframe.text = String(_myGIFPlayer.currentFrame);
        }
        
        private function onTimeOut(event:TimeoutEvent):void 
        {
            trace ("gif is error!");
        }
        
        private function play():void 
        {
            _myGIFPlayer.play();
        }
        
        private function stop():void 
        {
            _myGIFPlayer.stop();
        }
        
        private function gotoandplay():void 
        {
            var numFrame:Number = Math.floor(Math.random() * _totalFrame ) + 1;
            _myGIFPlayer.gotoAndPlay(numFrame);
            gotoplaybtn.label = "gotoPlay(" + numFrame + ")";
        }
        
        private function gotoandstop():void 
        {
            var numFrame:Number = Math.floor(Math.random() * _totalFrame ) + 1;
            _myGIFPlayer.gotoAndStop(numFrame);
            gotostopbtn.label = "gotoStop(" + numFrame + ")";
        }
        ]]>
    </mx:Script>
    
    <mx:Image id="img" width="217" height="300" top="30" left="240"/>
    <mx:ApplicationControlBar width="80%" left="50" bottom="20" >
        <mx:Button label="Play" height="22" click="play();" styleName="primaryButton" />
        <mx:Button label="Stop" height="22" click="stop();" />
        <mx:Button id="gotoplaybtn" height="22" label="gotoPlay(rand)" click="gotoandplay();" />
        <mx:Button id="gotostopbtn" height="22" label="gotoStop(rand)" click="gotoandstop();" />
        <mx:Label text="TotalFrame:" />
        <mx:Label id="totalframe" />
        <mx:Label text="CurrentFrame:" />
        <mx:Label id="currentframe" />
    </mx:ApplicationControlBar>
 
</mx:Application>

 

  • md.rar (361.2 KB)
  • 下载次数: 206
分享到:
评论

相关推荐

    flex gif图片显示问题

    这里的问题涉及到在Flex布局中显示GIF图片,特别是动态加载时的优化策略。GIF图像格式通常用于表示动画,如加载指示器或简单的动态效果。 **Flex布局** 是CSS3中的一个模块,全称为Flexible Box,或称作弹性盒模型...

    flex_gifplayer使用实例

    Flex_GifPlayer是一款基于Adobe Flex和AS3(ActionScript 3)开发的GIF图片处理工具,主要用于合成和播放GIF动态图像。在本文中,我们将深入探讨如何使用Flex_GifPlayer以及它的工作原理,同时提供一个实际的使用...

    GIF 图片显示 FLEX

    "GIF图片显示FLEX"这个话题可能指的是在编程或开发环境中处理GIF图片时遇到的问题,特别是在动态显示或者自定义显示GIF动画时所采用的技术和方法。FLEX在这里可能是指Flex布局,一种在前端开发中用于实现灵活、响应...

    Flex让GIF的图片动起来

    在本主题中,“Flex让GIF的图片动起来”指的是使用Flex技术来处理和展示动态GIF图像。 动态GIF是一种常见的图像格式,支持连续播放的帧序列,因此可以用来制作简单的动画。在Flex中,你可以通过集成Flash Player的...

    flex不显示GIF图片问题的另类解决方法

    除此之外,还存在其他一些方法可以尝试解决Flex不显示GIF图片的问题,例如将GIF图片转换为其他格式,如使用Sprite Sheets或者将GIF动画拆分为一系列静态帧,再用ActionScript逐帧播放等。 在处理GIF图片显示问题时...

    flex svg代码生成图片

    在 Flex 应用程序中,可以使用 SVG 资源,但只能作为一种图像引入,类似于 JPG 和 GIF 图像,而不能使用 SVG 的一些高级特性。这种方式只能在编译时静态加载,无法在运行时加载,图片的大小也无法改变。 二、动态...

    flex小技巧之加载GIF图片

    这个文件包含了加载和播放GIF图片的所有必要逻辑。开发者需要将下载好的GIFPlayer类文件集成到Flex项目中,以便在项目中进行引用。 2. 创建Flex项目并引入GIFPlayer类:在创建Flex项目后,需要在项目中引入...

    Flex加载动态图片(GIF)

    通过以上两种方式,你可以实现在Flex应用程序中加载并播放动态GIF图片。在实际开发中,可以根据项目需求和性能考虑选择适合的解决方案。转换为SWF可能会牺牲一些GIF的兼容性,而使用GIFPlayer组件则能保持原始的GIF...

    图片压缩flex demo

    常见的图片压缩算法包括JPEG(有损)、PNG(无损)和GIF(无损)。在Flex中,我们可以使用BitmapData对象和相关方法来实现自定义的图片压缩逻辑。 "imageLoading"这个文件名可能表示该示例涉及加载图片到应用程序中...

    flex 动态载入外部图片

    Flex是基于ActionScript 3.0的开发框架,它允许我们利用Loader类来加载不同类型的媒体资源,包括图片(JPEG、PNG、GIF等)。Loader类提供了一个接口,可以动态地在运行时加载和显示二进制数据,例如图像。 2. **...

    Flex GIF Animator v8.52

    可以创建GIF, Flash, Quicktime 动画,并且可以支持实时的3D特效以及声音同步。软件可以优化生成的动画影片的体积,或者调整影片的压缩比。内置30种优秀的视频特效,包括粒子运动特效等。此外软件还集成了抓图,图片...

    flex图片显示 很绚丽的图片显示

    6. 案例分析:提到的“PicWatcher”可能是一个图片查看器应用或组件,它可能实现了类似上述的图片显示和管理功能,包括浏览、缩放、旋转、幻灯片播放等功能。通过分析并学习此类应用,我们可以借鉴其设计思路和代码...

    flex 苹果桌面效果的弹出窗口

    通常,一个Flex项目会包含多个文件,如MXML文件(定义组件的结构和外观)、ActionScript类文件(处理逻辑和数据操作)、资源文件(如图片、样式表)等。在这个特定的场景下,我们可以假设这个“苹果桌面”文件夹包含...

    Flex4中头部背景图片的Accordion

    ### Flex4中头部背景图片的Accordion知识点解析 在Flex4框架中,开发人员经常需要创建具有高度定制化外观的应用程序组件。本篇文章将基于提供的文件信息深入探讨如何在Flex4中实现一个拥有自定义头部背景图片的...

    flex做的图片浏览

    标题中的“flex做的图片浏览”指的是使用Adobe Flex这一开源框架创建的一个应用程序,专门用于查看图片。Flex是一款基于ActionScript 3.0的编程语言和MXML标记语言的开发工具,它允许开发者构建富互联网应用程序...

    flex图片浏览(带图片缩放功能)

    在本文中,我们将深入探讨如何使用Adobe Flex技术创建一个具有图片浏览和缩放功能的应用程序。Flex是一种基于ActionScript 3.0的开源框架,它允许开发者构建富互联网应用程序(RIAs),尤其适用于构建交互性强的Web...

    flex-图片保存-本地磁盘-单个ui截屏-整个框架截屏

    - 图片的编码格式可以根据需要调整,如JPEG、PNG、GIF等。 - 为提高性能,可以在不必要时避免频繁截屏,特别是在大型或复杂的UI上。 以上就是Flex中实现图片保存至本地磁盘的基本步骤和关键知识点。通过这些技术...

    flex 自定义加载进度框

    3. `logo.gif`: 这可能是预加载器中使用的品牌标志或其他静态图像,它可以被集成到自定义预加载器的动画中。 4. `说明文件.html`: 这个文件应该提供了关于如何使用或实现这个自定义预加载器的详细说明,包括如何集成...

Global site tag (gtag.js) - Google Analytics