背景
现如今每个app都有清除缓存的功能,但是缓存的主要内容是图片相关的信息,而SDWebImage已经帮我们做好了缓存的功能,也已经实现了清除缓存的功能,因此可以模仿该框架封装我们自己的工具类.
废话不多说,直接看效果展示:
如何使用?
点击这个传送门,就可以直接下载该工具类,直接使用即可.
- 在展示的界面的viewDidLoad方法中,直接调用该工具类,传入相应的参数即可.
该工具类的优点
该工具类主要包括
- 获得缓存和清除缓存两大块
- 通过子线程计算耗时操作
- 在主线程通过block实现回调传值的操作
- 大大优化了界面的性能等.
重要思想
耗时操作
- 很好的控制了耗时操作导致的用户体验效果的改善
- 通过遍历获取传入参数的路径下的所有文件,然后判断是否是文件夹,给予排除
- 通过
遍试
之后,就可以获得总大小
block回调的操作
- 将计算的值,回传给外界的方法调用处
- 由于要在界面上进行相应的显示,因此在工具类内部直接切换到了主线程中
- 如果不切换主线程,将会没有显示
以上就是,本文的主要思想,再附一个demo的传送门,内部附赠了使用的简单demo.内部有详尽的注释.
Come On,buddy!