我的方法比较简单,直接使用AF下载图片到本地,然后在imageView中通过调用SDWebImage来播放Gif图片。
//部分关键代码如下:#import "UIImage+GIF.h"@property (nonatomic, strong) AFHTTPRequestOperationManager *afManager;- (void)viewDidLoad:(BOOL)animation{ [superviewDidLoad:animation]; //... //... if ([imageUrlStr containsString:@".gif"]) { [self downLoadGifImage:imageUrlStr AndImageView:tImageView]; }else{ [tImageView sd_setImageWithURL:[NSURL URLWithString:imageUrlStr]]; }}- (void)downLoadGifImage:(NSString *)urlImageStr AndImageView:(UIImageView *)imageView{ if (!self.afManager) { self.afManager = [AFHTTPRequestOperationManager manager]; self.afManager.responseSerializer = [AFHTTPResponseSerializer serializer]; } [self.afManager GET:urlImageStr parameters:nil success:^(AFHTTPRequestOperation *operation, id responseObject) { [imageView setImage:[UIImage sd_animatedGIFWithData:responseObject]]; } failure:^(AFHTTPRequestOperation *operation, NSError *error) { NSLog(@"这么烂的网络还想看git,洗洗睡吧"); }];}