4.8 下载网络图片显示下载进度并保存在沙箱目录中 [iOS开发
1. 本节课将为您演示,网络图片的下载,并实时显示下载的进度。首先在左侧的项目导航区,打开视图控制器的代码文件。
![](https://img.haomeiwen.com/i5981183/99fea6c52ba6d322.png)
2. 现在来实现一个较为简单的功能,即下载一个文本文件,并将该文件存储在沙箱中。
![](https://img.haomeiwen.com/i5981183/ad18562a46711b43.png)
![](https://img.haomeiwen.com/i5981183/40997e46175f49f7.png)
4. 添加一个方法,通过访问服务器的接口,下载并保存一个文本文件。
![](https://img.haomeiwen.com/i5981183/55fe4fff44824bdc.png)
5. 首先初始化一个下载请求对象,并设置下载后的存储目录,位于沙箱的文档目录。
![](https://img.haomeiwen.com/i5981183/d0f2b5880e271443.png)
6. 接着在控制台输出沙箱中的文档目录,您将使用这条日志信息,进入该目录并查看下载后的文件。
![](https://img.haomeiwen.com/i5981183/de174cfe46446c76.png)
7. 然后调用网络操作库的下载方法,下载指定的服务器接口,并将下载后的文件存储在指定的目录中。
![](https://img.haomeiwen.com/i5981183/48d63f9e075cda02.png)
8. 在视图加载完成的方法中,执行文件的下载。接着点击左上角的[编译并运行]按钮,启动模拟器预览项目。
![](https://img.haomeiwen.com/i5981183/a8a8fcd65e70fe36.png)
9. 在模拟器打开之后,文件已经被下载到指定的位置。接着点击此处的[停止]按钮,关闭模拟器。
![](https://img.haomeiwen.com/i5981183/01a39be2fb26d7bd.png)
10. 然后在左侧的圆点处按下手指,并向右侧拖动,以选择文件所在的路径。
![](https://img.haomeiwen.com/i5981183/6bcd0fb21d543842.png)
![](https://img.haomeiwen.com/i5981183/630af1e4465af782.png)
![](https://img.haomeiwen.com/i5981183/c63662b18629cfed.png)
13. 依次点击[前往 > 前往文件夹]命令,打开前往文件夹窗口。
![](https://img.haomeiwen.com/i5981183/08efe07e263d58b4.png)
![](https://img.haomeiwen.com/i5981183/3cc91d25ecab846c.png)
![](https://img.haomeiwen.com/i5981183/ecc908d70ca4ece1.png)
![](https://img.haomeiwen.com/i5981183/9864b5802ad443c8.png)
![](https://img.haomeiwen.com/i5981183/226f8cd8af479ade.png)
![](https://img.haomeiwen.com/i5981183/b689fc7689f65054.png)
![](https://img.haomeiwen.com/i5981183/04210f40f280b8a5.png)
![](https://img.haomeiwen.com/i5981183/6e6a12c61947cef3.png)
21. 继续编写代码,实现一个可实时显示下载进度的图片下载功能。
![](https://img.haomeiwen.com/i5981183/1f6b6d39f555baac.png)
![](https://img.haomeiwen.com/i5981183/d01d4282db75db9d.png)
23. 同样初始化一个下载请求对象,并设置下载后的存储目录,位于沙箱中的文档目录。
![](https://img.haomeiwen.com/i5981183/5d17157518fc9661.png)
![](https://img.haomeiwen.com/i5981183/49541afa471cb3bc.png)
25. 然后调用网络操作库的下载方法,下载指定网址的图片,并将下载后的文件存储在指定的目录中。
![](https://img.haomeiwen.com/i5981183/49653832b9174d05.png)
![](https://img.haomeiwen.com/i5981183/9ee54f0cc9f0fd57.png)
27. 在控制台依次输出进度的完成比例、已经下载的字节数和全部的字节数。
![](https://img.haomeiwen.com/i5981183/aa23433aaa33292c.png)
![](https://img.haomeiwen.com/i5981183/b62fd382242d17b9.png)
![](https://img.haomeiwen.com/i5981183/4c30623f6a1882f0.png)
30. 在返回结果的方法中,依次输出网络返回对象、图片下载临时存放的位置,以及下载位置后的存储位置。
![](https://img.haomeiwen.com/i5981183/9637158ccf2e770c.png)
![](https://img.haomeiwen.com/i5981183/54bd28f589b06dbe.png)
32. 接着点击左上角的[编译并运行]按钮,启动模拟器预览项目。
![](https://img.haomeiwen.com/i5981183/ddfeac70c918d65d.png)
33. 模拟器打开后,在底部的控制台,输出了图片下载的进度信息以及其它的信息。点击此处的[停止]按钮,关闭模拟器。
34. 按下键盘上的快捷键,跳转到文件夹窗口,查看刚刚下载的图片文件。
![](https://img.haomeiwen.com/i5981183/9544a9f356983996.png)
35. 在沙箱目录中的文档文件夹,多了一份图片文件,点击选择该文件。
![](https://img.haomeiwen.com/i5981183/6e5cf91e8bd45df1.png)
36. 然后按下键盘上的空格,查看下载的图片,并结束本节课程。
![](https://img.haomeiwen.com/i5981183/474962c0529041bd.png)
![](https://img.haomeiwen.com/i5981183/ed019e00c2a9023a.png)
本文整理自:《app开发中的神兵利器》,真正的[手把手]教学模式,用最快的速度上手iOS开发,苹果商店App Store免费下载:https://itunes.apple.com/cn/app/id1209739676,或扫描本页底部的二维码。课程配套素材下载地址:资料下载
![](https://img.haomeiwen.com/i5981183/dbb5a7562b6b08f2.png)