之前的使用方法
UIImageView *imgView = [UIImageView new];
imgView.contentMode = UIViewContentModeScaleAspectFit;
imgView.frame = CGRectMake(0, 0, 100, 30);
NSString *filePath = [[NSBundle bundleWithPath:[[NSBundle mainBundle] bundlePath]]pathForResource:@"going" ofType:@"gif"];
NSData *imageData = [NSData dataWithContentsOfFile:filePath];
imgView.backgroundColor = [UIColor clearColor];
imgView.image = [UIImage sd_animatedGIFWithData:imageData];
[self addSubview:imgView];
SDWebImage4.0之后使用以上的方法显示gif图,会显示不出来。
访问SDWebImage的github网址
SDWebImage github网址
Animated Images (GIF) support
- Starting with the 4.0 version, we rely on FLAnimatedImage to take care of our animated images.
- If you use cocoapods, add
pod 'SDWebImage/GIF'
to your podfile. - To use it, simply make sure you use
FLAnimatedImageView
instead ofUIImageView
. -
Note: there is a backwards compatible feature, so if you are still trying to load a GIF into a
UIImageView
, it will only show the 1st frame as a static image. -
Important: FLAnimatedImage only works on the iOS platform. For OS X, use
NSImageView
withanimates
set toYES
to show the entire animated images andNO
to only show the 1st frame. For all the other platforms (tvOS, watchOS) we will fallback to the backwards compatibility feature described above
使用下面的新方法就可以正常显示gif
FLAnimatedImageView *imgView = [FLAnimatedImageView new];
imgView.contentMode = UIViewContentModeScaleAspectFit;
imgView.frame = CGRectMake(0, 0, 100, 30);
NSString *filePath = [[NSBundle bundleWithPath:[[NSBundle mainBundle] bundlePath]]pathForResource:@"going" ofType:@"gif"];
NSData *imageData = [NSData dataWithContentsOfFile:filePath];
imgView.backgroundColor = [UIColor clearColor];
imgView.animatedImage = [FLAnimatedImage animatedImageWithGIFData:imageData];
[self addSubview:imgView];