用SDWebImage加载FLAnimatedImage
用SDWebImage加载FLAnimatedImage
效果
源码
https://github.com/YouXianMing/Animations
// // GifPictureController.m // Animations // // Created by YouXianMing on 16/2/21. // Copyright © 2016年 YouXianMing. All rights reserved. // #import "GifPictureController.h" #import "FLAnimatedImage.h" #import "FLAnimatedImageView.h" #import "UIImageView+WebCache.h" #import "UIView+SetRect.h" #import "GCD.h"@interface GifPictureController ()@end@implementation GifPictureController- (void)setup {[super setup];// https://github.com/Flipboard/FLAnimatedImage self.contentView.layer.masksToBounds = YES;FLAnimatedImageView *gifImageView = [[FLAnimatedImageView alloc] init];gifImageView.frame = CGRectMake(0.0, 0.0, 100.0, 100.0);[self.contentView addSubview:gifImageView];__weak GifPictureController *wself = self;NSString *imagePath = @"http://images2015.cnblogs.com/blog/607542/201601/607542-20160123090832343-133952004.gif";NSData *gifImageData = [self imageDataFromDiskCacheWithKey:imagePath];if (gifImageData) {[wself animatedImageView:gifImageView data:gifImageData];} else {NSURL *url = [NSURL URLWithString:imagePath];[[SDWebImageDownloader sharedDownloader] downloadImageWithURL:urloptions:0progress:nilcompleted:^(UIImage *image, NSData *data, NSError *error, BOOL finished) {[[[SDWebImageManager sharedManager] imageCache] storeImage:imagerecalculateFromImage:NOimageData:dataforKey:url.absoluteStringtoDisk:YES];[[GCDQueue mainQueue] execute:^{[wself animatedImageView:gifImageView data:data];}];}];} }- (void)animatedImageView:(FLAnimatedImageView *)imageView data:(NSData *)data {FLAnimatedImage *gifImage = [FLAnimatedImage animatedImageWithGIFData:data];imageView.frame = CGRectMake(0, 0, gifImage.size.width, gifImage.size.height);imageView.center = self.contentView.middlePoint;imageView.animatedImage = gifImage;imageView.alpha = 0.f;[UIView animateWithDuration:1.f animations:^{imageView.alpha = 1.f;}]; }- (NSData *)imageDataFromDiskCacheWithKey:(NSString *)key {NSString *path = [[[SDWebImageManager sharedManager] imageCache] defaultCachePathForKey:key];return [NSData dataWithContentsOfFile:path]; }@end
细节
转载于:https://www.cnblogs.com/YouXianMing/p/5208142.html
用SDWebImage加载FLAnimatedImage相关推荐
- sdwebimage 加载webp图片
sdwebimage加载 webp / git 配置宏 - (void)setUpCusPhoto {_scrollView = [UIScrollView new];_scrollView.fra ...
- 完美解决SDWebImage加载多个图片内存崩溃的问题
SDWebImage大家肯定都恨熟悉了,国内外太多的App使用其进行图片加载. 但是最近在使用过程中发现,我用SDWebImage加载多个图片,类似微博动态那种,在加载的过程中.我发现当图片分辨率比较 ...
- 解决SDWebimage加载过多过大图片导致内存爆表崩溃的问题
问题: Restore the connection to "xxxx" and run "xx" again, or if "xx" is ...
- 使用SDWebImage加载多个图片内存崩溃的问题
使用SDWebImage加载多个图片时,在加载的过程中,当图片分辨率比较大的时候,加载几张图片就崩溃了.需要对图片进行处理,避免内存崩溃问题. 一.预加载图片URL数组 预加载URL数组 [[SDWe ...
- 解决MWPhotoBrowser中的SDWebImage加载大图导致的内存警告问题
本文转载至 http://www.superqq.com/blog/2015/01/22/jie-jue-mwphotobrowserzhong-de-sdwebimagejia-zai-da-tu- ...
- SDWebImage 加载图片流程
SDWebImage是老生常谈的三方,这篇博客算是一个笔记吧,记录下SDWebImage源码相关加载图片流程. 注1: 整体流程基于 SDWebImage 5.0.6 版本. 注2: 本文只对iOS执 ...
- SDWebImage 加载Https自签名证书时的图片问题
你是否遇到了这种情况,好不容易把自签名HTTPS证书配置好了,访问https接口也成功了,但是图片加载不出来? 传了SDWebImageAllowInvalidSSLCertificates 还是没效 ...
- ios SDWebImage 加载图片流程
入口 setImageWithURL:placeholderImage:options: 会先把 placeholderImage 显示,然后 SDWebImageManager 根据 URL 开始处 ...
- 加载大量图片内存暴增导致闪退 Terminated due to memory issue(内存暴增SDWebImage加载高清大图崩溃)
上传图片一定要压缩,一定要压缩,一定要压缩.(目前手机拍摄的图片一张几M,上传后不压缩,如果几十张一块加载展示时内存画面有点美!如果是后台上传除了需要高清以外的图也需要压缩处理) 下载大量图片时一定要 ...
最新文章
- php用正则去掉一些固定字符,用PHP正则表达式清除字符串的空白
- Linux rm 删除指定文件外的其他文件 方法汇总
- QtJava笔记-Qt与Java进行SSL双向认证(Qt服务端,Java客户端)
- HTML中的父选择器,html – css4中是否有父选择器?
- 7-11 分段计算居民水费
- 现在很多人都在网上找富业
- Python标准库--time模块的详解
- python自动化学习之语法学习(判断语句和循环语句)
- Kudu:支持快速分析的新型Hadoop存储系统
- 【程序人生】程序员接私活常用平台汇总
- 谷歌浏览器无法登陆_论坛上传图片后自动退出登陆?你不是一个人,原因及解决方法来了...
- 手机直播app制作大揭秘之视频直播系统方案
- 维修电工技能实训考核装置
- 计算机结构系统的发展趋势,计算机体系结构的现状及发展趋势.docx
- 首都师范 博弈论 5 2 1帕累托最优
- 软件能力成熟度模型CMM
- CSS3回炉计划-编码技巧
- vscode设置C++代码格式化(Clang-Format)
- # 我的家乡--永平风景
- sublimeText3配置sublimeLinter