我试图用Swift对var url : String = "http://ip.jsontest.com/"
进行测试REST调用。我想要做的是在UITextView中显示结果(基本上只是打印JSON)。从Swift中的Closure中获取数据
现在我想用这个片段为实现这一目标:
NSURLConnection.sendAsynchronousRequest(request, queue: NSOperationQueue(), completionHandler:{ (response:NSURLResponse!, data: NSData!, error: NSError!) -> Void in
// code
但是,我不知道如何走出封闭的数据进入我的UITextView。打印到控制台是没有问题的,但是将数据写入var并将其返回给我的TextView不起作用。
“型NSException的未捕获的异常终止” ,只要我尝试在该Closure中设置textView.text。奇怪的是,因为我可以轻松println(数据),但设置self.textView.text =“\(数据)”引发异常。 – 2014-10-10 12:00:00
将响应从NSData转换为NSString,然后尝试。正如我更新上面的答案。 – Suresh 2014-10-10 12:25:55
你也应该确保设置UITextView.text是通过将其包装在'dispatch_async(dispatch_get_main_queue()){...} – 2014-10-10 18:13:30