iOS-UIImageView获取网络图片

在软件开发中,从网络获取照片是必不可少的
下面介绍一下加载网络图片的方法

(首先说明一下,由于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


你可能感兴趣的:(iOS)