剛開始的時候是直接使用SDCycleScrollView加載banner的,結(jié)果測試說這個是gif圖,怎么不動呢,其他的是普通圖片菲语,但是后臺返回的數(shù)據(jù)全是.jpg格式的,全沒有區(qū)分是什么格式的,于是乎bug產(chǎn)生了晓锻,因為使用SDCycleScrollView本身是不可以加載動態(tài)圖的,百度過很多資料,在網(wǎng)上搜到一個分類萍膛,雖然效果實現(xiàn)了,但是十分的卡頓嚷堡,這樣肯定是不行的蝗罗,用戶體驗極差,那么能怎么辦呢蝌戒,只能舍而去之串塑,尋找新大陸。又在百度上的尋找了許久北苟,最后再git上了發(fā)現(xiàn)了FLAnimatedImage桩匪。于是對SDCycleScrollView進(jìn)行了簡易的修改,效果達(dá)到了友鼻。
一吸祟、使用SDCycleScrollView不加載gif的解決辦法
我們來看下修改了哪些內(nèi)容
Snip20170410_9.png
其次在SDCollectionViewCell.m
中將imageView
初始化換成FLAnimatedImageView
進(jìn)行替換系統(tǒng)的UIImageView
Snip20170410_10.png
最后展示成果:
- 1瑟慈、在需要的控制器處里面初始化
SDCycleScrollView
對象
Snip20170410_11.png
效果圖(錄制可能不是很清晰,但是要能實現(xiàn)我們想要的效果就行):
1.gif
- 2屋匕、加載數(shù)據(jù)
Snip20170410_12.png
Snip20170410_12.png
二葛碧、使用SDWebImage不加載gif以及卡頓的解決辦法
方式一:采用FLAnimatedImageView進(jìn)行初始化
示例:
Snip20170410_15.png
方式二:自己添加一個FLAnimatedImageView+WebCache
分類,需改動下面方法,其他的方法不需要改動
- (void)sd_setImageWithURL:(nullable NSURL *)url
placeholderImage:(nullable UIImage *)placeholder
options:(SDWebImageOptions)options
progress:(nullable SDWebImageDownloaderProgressBlock)progressBlock
completed:(nullable SDExternalCompletionBlock)completedBlock
Snip20170410_18.png
使用方法一樣只需導(dǎo)入FLAnimatedImageView+WebCache.h
过吻,而不是導(dǎo)入#import "UIImageView+WebCache.h"
即可
推薦鏈接
FLAnimatedImage下載地址
iOS GIF動畫加載框架-FLAnimatedImage解讀
SDCycleScrollView下載地址