IOS HTTP下载一个图片
来源:互联网 发布:51单片机和arm单片机 编辑:程序博客网 时间:2024/05/21 21:52
天我们来简单的学习一下通过HTTP远程下载一个图片文件,并把它显示在ImageView上,这个不是什么难事儿。
首先新建一个空项目,然后添加一个ViewController类,同时附带xib。
然后拖拽一个按钮和一个ImageView进来,如下图所示:
然后为按钮添加action取名为downloadImg,为Image View添加outlet取名为imgView,接下来我们就要在downloadImg这个action的实现方法中加入如下代码:
- //download img from url
- - (IBAction)downloadImg:(id)sender
- {
- NSError *error=nil;
- NSURL *url=[NSURL URLWithString:@"http://ww3.sinaimg.cn/mw690/51f76ed7jw1e3ohzmmnffj.jpg"];
- NSURLRequest *request=[[NSURLRequest alloc] initWithURL:url];
- NSData *imgData=[NSURLConnection sendSynchronousRequest:request returningResponse:nil error:&error];
- UIImage *img=nil;
- if(imgData)
- {
- img=[UIImage imageWithData:imgData];
- imgView.image=img;
- }
- }
然后是点击按钮之后的效果:
再然后就是图片文件下载完成之后的展示效果:
大家可以注意到在我们点击按钮之后,按钮变为蓝色一直等到图片下载完成并在ImageView上显示出来之前都是蓝色的,这就是同步下载方式,客户端发起请求,服务器端接收请求并解析http参数,在服务器端向客户端返回数据之前,客户端会一直阻塞等待返回结果,那么这种同步下载的方式的优点就是简单易用,几行代码就可以搞定了,缺点就是会阻塞,同时,根据网络状况的不同,等待的时间也会不确定。
本来想自己改为手动下载的方式,但是因为时间紧迫没改好,所以留到下次改,当然,大家也可以去github上看下SDWebImage这个项目,使用起来也是非常的方便,在此附上git地址,rs/SDWebImage
2013年06月04日,Eric.Tang 记
0 0
- IOS HTTP下载一个图片
- IOS第二十九天——HTTP下载一个图片
- Http URLConnector 下载一个网络图片
- vc 下载http 图片
- http下载图片
- Android http 下载图片
- Http下载图片
- iOS http文件下载
- ios http 上传图片
- IOS HTTP 上传图片
- ios http 上传图片
- iOS图片的下载
- iOS 异步下载图片
- iOS 异步下载图片
- iOS下载网络图片
- iOS GCD下载图片
- IOS 异步下载图片
- iOS 异步下载图片
- PHP实现的快速排序算法
- 二叉树的建立及递归遍历
- Android中编辑其他应用的SharedPreferences(二)
- linux 关于线程不安全函数localtime小记
- .hdu4288 Coder & CF85-DSum of Medians
- IOS HTTP下载一个图片
- 杂七杂八 - 计算机二级题目
- 161、腾讯现场招聘问题 通配符匹配
- 对C++中的类型转换的再认识
- [Tech Note] Comparison functions in C++
- Android更新系统相册
- 算法----希尔排序(shell sort)
- Mac系统下创建右键打开Shell的功能
- 《c程序设计语言》读书笔记-4.14-定义宏交换两个参数