gpt4 book ai didi

ios - 将 NSURLConnection 更改为 NSURLSession 后加载图像很慢

转载 作者:行者123 更新时间:2023-11-29 12:12:24 26 4
gpt4 key购买 nike

我在 iOS 8 中有一个代码用于加载我的图像,而且速度非常快。

if let url = NSURL(string: urlString) {
let request = NSURLRequest(URL: url)
NSURLConnection.sendAsynchronousRequest(request, queue: NSOperationQueue.mainQueue()) {
(response: NSURLResponse?, data: NSData?, error: NSError?) -> Void in
self.image = UIImage(data: data!)
}
}

然后 iOS 9 出来了,我为此苦苦挣扎

let session = NSURLSession.sharedSession()
let urlString = urlString
let url = NSURL(string: urlString)
let request = NSURLRequest(URL: url!)
let dataTask = session.dataTaskWithRequest(request) { (data:NSData?, response:NSURLResponse?, error:NSError?) -> Void in
self.image = UIImage(data: data!)
}
dataTask.resume()

图片加载速度很慢。

最佳答案

dataTaskWithRequest 闭包中,您必须在主线程上更新图像。这样做:

let dataTask = session.dataTaskWithRequest(request) { (data:NSData?, response:NSURLResponse?, error:NSError?) -> Void in
dispatch_async(dispatch_get_main_queue()) {
self.image = UIImage(data: data!)
}
}

关于ios - 将 NSURLConnection 更改为 NSURLSession 后加载图像很慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33034714/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com