MUImageCache的思路主要来自于[[FlyImage]](https://www.jianshu.com/p/093f551e0a44),经过试用发现了一些问题。
FlyImage的主要问题:
- 崩溃、各种各样的崩溃
- 图片无法正常显示
- 图片数据会被后来的图片数据覆盖
- 不支持单独下载管理
- 不支持GIF
·········
# 优势
- 内存消耗低
- 修复FlyImage已发现的bug
- 支持FlyImage具有的优势
- 新增图片下载管理
- 支持GIF
- 支持圆角绘制,并避免调用( layer.cornerRadius;layer.masksToBounds)
#区别
SDWebImage图片缓存框架,采用的是数据流下载方式(下载过程中接收到数据就回调),如果同时需要下载多张图片,内存几乎会几何系数的增加。
[[MUKit/MUImageCache]]图片缓存框架,采用的是文件下载方式(文件下载完成后才会进行回调),用[mmap](虚拟内存映射)缓存图片,对内存的影响降至较低,非常适合对内存敏感的应用。
[SDWebImage]会随着图片的增多内存几乎是几何系数的增多,而[MUImageCache]变化则很小,每增加一张图片内存增加大约是0.02m。
)
//小图标
- (void)setIconURL:(NSString*)iconURL;
- (void)setIconURL:(NSString*)iconURL placeHolderImageName:(NSString*)imageName;
//绘制圆角
- (void)setIconURL:(NSString*)iconURL placeHolderImageName:(NSString*)imageName cornerRadius:(CGFloat)cornerRadius;
//图片
- (void)setImageURL:(NSString*)url;
- (void)setImageURL:(NSString*)imageURL placeHolderImageName:(NSString*)imageName;
//绘制圆角
- (void)setImageURL:(NSString*)imageURL placeHolderImageName:(NSString*)imageName cornerRadius:(CGFloat)cornerRadius;
# 其它框架
[MUSignal - 最简洁易用的事件处理框架]
[MUTableViewManager - MVVM TableView 只需一个block就可显示列表]
[ MUNavigation 轻量 简单 易用 的导航框架]