5.11 使用Kingfisher进行图像加载Loading效果
1. 本节课将为您演示,图像视图的Loading动画的效果,以及图片的缓存。首先确保在您的项目中,已经安装了所需的第三方库。手指双击此处查看安装配置文件。
image
2. 根据配置文件中的相关设置,安装第三方库。安装完成之后,双击打开此处的项目文件。
image
image
4. 现在开始编写代码,依次使用图像视图类型的各个扩展方法。
image
image
image
image
8. 从项目中读取一张图片,并创建一个图像视图,显示加载的图片。
image
9. 设置图像视图的显示区域,和根视图相同,然后将图像视图添加到根视图中。
image
10. 然后添加一个按钮,当用户点击该按钮时,下载一张网络图片。
image
11. 设置按钮的背景颜色为橙色,同时设置按钮在正常状态下的标题文字。
image
image
image
image
image
16. 设置图像视图的加载动画的样式,这里使用系统默认的Loading动画。
image
17. 将图像视图显示的内容,修改为下载后的图片。接着点击左上角的[编译并运行]按钮,启动模拟器预览项目。
image
18. 在弹出的模拟器上,显示了一个图像视图,以及底部的按钮控件。点击此处的按钮,加载一张网络上的图片。
19. 当下载网络图片时,首先显示了一个Loading动画,在下载完成后,Loading动画消失,并在图像视图中显示下载后的图片。
image
image
image
image
23. 设置在下载图片时,使用这张动画素材,作为图片下载时的Loading动画。
image
24. 将图像视图显示的内容,修改为下载后的图片。接着点击左上角的[编译并运行]按钮,启动模拟器预览项目。
image
25. 在弹出的模拟器上,显示了一个图像视图,以及底部的按钮控件。再次点击此处的按钮,加载一张网络上的图片。
26. 当下载网络图片时,首先显示了一个自定义的Loading动画,在下载完成后,Loading动画消失,并在图像视图中显示下载后的图片。
image
27. 接着通过调用图像视图对象的扩展方法,下载并设置网络上的图片,同时显示下载的进度。
image
28. 通过已经接收的字节数和全部的字节数,计算图片下载进度的百分比。
image
29. 通过调用图像视图对象的扩展方法,下载并设置网络上的图片。当下载完成后,使用渐显的方式,显示下载的图片。
image
30. 初始化一个圆角图片处理器,并设置圆角的半径为160。
image
31. 通过调用图像视图对象的扩展方法,下载并设置网络上的图片,同时给下载的图片添加圆角效果。
image
image
33. 图片下载完成后,在图像视图上显示了下载后的图片,图片拥有圆角效果。点击此处的[停止]按钮,关闭模拟器。
image
34. 初始化一个模糊图像处理器,并设置模糊的半径为4,接着再增加一个圆角处理器。
image
35. 通过调用图像视图对象的扩展方法,下载并设置网络上的图片,同时给下载的图片添加模糊和圆角效果。
image
36. 当再次给图像视图,设置同一个网络图片时,使用的是缓存的图片,如果需要重复下载图片,可以设置下载选项为强制刷新。
image
37. 如果需要从缓存中获取图片,可以设置下载的选项为来自缓存。
image
38. 接着演示图片缓存的使用。首先通过图片下载器,下载指定网址的图片。
image
image
40. 通过调用图片缓存全局对象的存储方法,将图片存储在本地,并设置存储的键值。
image
41. 通过简化的方法,可以仅需指定键值,即可快速缓存图片。
image
42. 通过键值可以快速判断在某键值下,是否存在缓存的图片。接着点击左上角的[编译并运行]按钮,启动模拟器预览项目。
image
43. 再次点击此处的按钮,加载一张网络上的图片。
44. 在图片下载完成后,图片被缓存在本地,并在控制台输出相关的日志。点击此处的[停止]按钮,关闭模拟器。
image
45. 通过图片缓存全局对象的删除图像方法,可以删除指定键值的缓存图像。
image
46. 通过图片缓存全局对象的清除磁盘缓存方法,可以删除磁盘上的所有缓存的图片。
image
47. 通过调用清除内存缓存方法,可以删除在内存中缓存的所有图片。
image
48. 通过调用清除过期的磁盘缓存,可以删除超过指定期限的,缓存在磁盘上的图片。
image
49. 第三方类库允许开发者设置缓存区域的大小,这里设置缓存的空间为50兆。
image
50. 设置缓存的期限为7天,超过7天的缓存图片将被删除。最后设置图片下载超时的时限为30秒,当超过30秒时,下载任务失败。
image
image
本文整理自:《app开发中的神兵利器》,真正的[手把手]教学模式,用最快的速度上手iOS开发,苹果商店App Store免费下载:https://itunes.apple.com/cn/app/id1209739676,或扫描本页底部的二维码。课程配套素材下载地址:资料下载
apps8 2.png