您的位置:首页 > 理论基础 > 计算机网络

iOS-UIImageView获取网络图片

2017-08-13 20:49 429 查看
在软件开发中,从网络获取照片是必不可少的
下面介绍一下加载网络图片的方法

(首先说明一下,由于iOS9中新增App Transport Security(简称ATS)特性,简单说就是原来请求用的HTTP要换成HTTPS,目的是更安全。但是我们请求的时候很可能用到http,直接请求http的话,控制台会打印一条消息:App Transport Security has blocked a cleartext HTTP (http://) resource load since it is insecure.
Temporary exceptions can be configured via your app's Info.plist file.意思大概就是http不能用啦,不过在info.plist文件中临时修改设置还是可以访问的。

那我们就把它ATS这个新要求停掉:在Xcode的info.plist文件中添加一条Dictionary类型的
App Transport Security
,再给它添加一个布尔型的子节点
Allow Aritrary Loads
,并将这个子节点布尔值设为 YES,就可以了)

修改info.plist文件

下面正式介绍方法:

一:首选的当然是NSData自带方法请求到数据然后赋给ImageView,代码如下:
//首先得拿到照片的路径,也就是下边的string参数,转换为NSData型。
NSData* imageData = [NSData dataWithContentsOfURL:[NSURL URLWithString:string]];

//然后就是添加照片语句,记得使用imageWithData:方法,不是imageWithName:。
UIImage* resultImage = [UIImage imageWithData: imageData];

是不是超级简单?但是具体使用了几次发现系统这种方法在照片多的时候特别的卡,因为它每次都要请求照片,建议使用SDWebImage.

下载地址:https://github.com/LisztGitHub/SDWebImage
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: