为什么延迟更新我的UIView

时间:2014-09-20 19:27:05

标签: ios swift

当我使用NSURLSession检索数据并希望在服务器提供数据后更新我的视图时,延迟更新视图大约需要15秒。

var url = NSURL.URLWithString("http://example.com/app/api.php")
var session = NSURLSession.sharedSession()
var dataTask = session.dataTaskWithURL(url, completionHandler: {(data: NSData!, response: NSURLResponse!, error: NSError!) -> Void in
  println(NSString(data: data, encoding: NSUTF8StringEncoding))
  self.myLabel.text = "completion"
  self.view.setNeedsDisplay()
  return})
dataTask.resume()

附加:如果我调用setNeedsDisplay,那无关紧要。

有什么建议我的代码有什么问题,或者如何避免这种延迟?

1 个答案:

答案 0 :(得分:0)

感谢rdelmar让我走向正确的方向,这是我更正的代码:

var url = NSURL.URLWithString("http://www.connected-media.de/app/api.php")

var sessionConfig = NSURLSessionConfiguration.defaultSessionConfiguration()

var URLSession = NSURLSession(configuration: sessionConfig, delegate: nil, delegateQueue: NSOperationQueue.mainQueue())

var dataTask = URLSession.dataTaskWithURL(url, completionHandler: {(data: NSData!, response:      NSURLResponse!, error: NSError!) -> Void in
println(NSString(data: data, encoding: NSUTF8StringEncoding))
self.myLabel.text = "completion"
return})        

dataTask.resume()