FLAnimatedImage_Applicaster 1.1.0

FLAnimatedImage_Applicaster 1.1.0

测试已测试
Lang语言 Obj-CObjective C
许可证 MIT
发布上次发布2016年5月

Anton Kononenko 维护。




FLAnimatedImage 是一个高性能的 iOS Animated GIF 引擎

  • 可以同时播放多个 GIF,播放速度与桌面浏览器相当
  • 尊重可变帧延迟
  • 在内存压力下表现优雅
  • 在第一次播放循环期间消除延迟或阻塞
  • 以与现代浏览器相同的方式解释快速 GIF 的帧延迟

它是一个经过良好测试的组件,为 Flipboard 上的所有 GIF 提供动力。[此博客文章](http://engineering.flipboard.com/2014/05/animated-gif/) 是一个很好的起点;也可以参见下面的 待办事项 部分)

Flipboard playing multiple GIFs

此为谁而制作?

  • 不支持 animated GIF 的应用程序
  • 已经支持 animated GIF 但希望获得更高性能解决方案的应用程序
  • 希望修改代码的人([相应博客文章](http://engineering.flipboard.com/2014/05/animated-gif/) 是一个很好的起点;也可以参见下面的 待办事项 部分)

安装与使用

FLAnimatedImage 是一个良好封装的内置组件。只需将您的 UIImageView 实例替换为 FLAnimatedImageView 实例即可获得 animated GIF 支持无),不需要管理中心缓存或状态。

如果您正在使用 CocoaPods,在命令行中输入以下内容即可快速测试试用

$ pod try FLAnimatedImage

要将它添加到您的应用程序中,将两个类 FLAnimatedImage.h/.mFLAnimatedImageView.h/.m 复制到您的 Xcode 项目中,或者通过 CocoaPods(通过在 Podfile 中添加以下内容)添加

pod 'FLAnimatedImage', '~> 1.0'

在您的代码中,使用 #import "FLAnimatedImage.h",从 animated GIF 创建一个图像,并设置图像视图以显示它

FLAnimatedImage *image = [FLAnimatedImage animatedImageWithGIFData:[NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://raphaelschaad.com/static/nyan.gif"]]];
FLAnimatedImageView *imageView = [[FLAnimatedImageView alloc] init];
imageView.animatedImage = image;
imageView.frame = CGRectMake(0.0, 0.0, 100.0, 100.0);
[self.view addSubview:imageView];

它可以灵活地集成到您的自定义图像加载堆栈中,并向下兼容 iOS 6。

它使用自动引用计数(Autorelease Counting)和苹果框架 QuartzCoreImageIOMobileCoreServicesCoreGraphics

它具有细粒度的日志记录功能。默认情况下,它使用 NSLog。但是,如果您的项目使用 CocoaLumberjack,则可以自动检测并使用 CocoaLumberjack 将日志发送到配置的输出。

由于 FLAnimatedImage 根据 MIT 许可证发布,因此它与 App Store 上任何应用程序使用的条款兼容。

待办事项

  • 支持其他动画图像格式,如 APNG 或 WebP
  • 集成到网络库和图像缓存中
  • 调查是否应将 FLAnimatedImage 成为 UIImage 的子类
  • 更智能的缓存
  • 将演示应用到iOS 6和iPhone上

该软件已成功发送给许多人,但请务必提出您的问题、问题和拉取请求!

如有进一步帮助,请随时联系@RaphaelSchaad

使用FLAnimatedImage选择应用

在您的应用中使用FLAnimatedImage?告诉我!