1
我打电话在refreshQuote()
函数完成后刷新标签。当查看日志以查看label.text
发生了什么时,我可以看到它已被替换,但视图仍然看起来相同。XCode 6 UILabel在从complition处理程序调用时不刷新文本
我从viewDidload
拨打refreshQuote()
。 当直接从viewDidLoad呼叫setQuoteLabel
它一切正常
请帮助,现在失去希望。提前
func refreshQuote()
{
var url : String = "https://api.parse.com/1/classes/Quotes"
var request : NSMutableURLRequest = NSMutableURLRequest()
request.addValue("------", forHTTPHeaderField: "X-Parse-Application-Id")
request.addValue("------strong text", forHTTPHeaderField: "X-Parse-REST-API-Key")
request.URL = NSURL(string: url)
request.HTTPMethod = "GET"
NSURLConnection.sendAsynchronousRequest(request, queue: NSOperationQueue(), completionHandler:{ (response:NSURLResponse!, data: NSData!, error: NSError!) -> Void in
var error: AutoreleasingUnsafeMutablePointer<NSError?> = nil
NSLog(error.debugDescription);
let jsonResult: NSDictionary! = NSJSONSerialization.JSONObjectWithData(data, options:NSJSONReadingOptions.MutableContainers, error: error) as? NSDictionary
if (jsonResult != nil)
{
var allResults: NSArray = jsonResult["results"] as NSArray
var pickedResult: NSDictionary = allResults[0] as NSDictionary
let q:String = pickedResult["message"] as String!
self.setQuoteLabel(q);
} else
{
// couldn't load JSON, look at error
}
})
}
func setQuoteLabel (quote:String)
{
NSLog(quote)
quoteLabel.text = quote;
quoteLabel.setNeedsDisplay();
NSLog(quoteLabel.text!)
}
谢谢,工作完美 – 2014-10-18 15:24:02
在迅速的辛博尔^应该被淘汰,我认为... – tong 2014-11-12 01:40:09
@tong谢谢,修正 – Antonio 2014-11-12 07:33:03