मैं एक छोटी सी समस्या है, मुझे कोडस्विफ्ट अद्यतन लेबल लेता 1min
class ViewController: UIViewController {
@IBOutlet weak var LBoutput: UILabel!
@IBAction func BTclick(sender: AnyObject) {
var url = NSURL(string: "http://google.com")
println("test0")
let getdata = NSURLSession.sharedSession().dataTaskWithURL(url){(data ,response , error) in
var htmlContent = NSString(data: data, encoding: NSUTF8StringEncoding)
println("test1")
println("test2")
self.LBoutput.text = "test6"
}
println("test3")
getdata.resume()
println("test4")
LBoutput.text = "test5"
}
से शुरू करते हैं इस कोड को मुझे
test0
के कंसोल में एक उत्पादन दे test3
test4
test1 test2
इसके अलावा लेबल अपडेट करने के लिए " test5 "बिना किसी समय के, लेकिन" test6 "को अपडेट करने के लिए लेबल 30sec की तरह लगता है।
मुझे कोई संकेत नहीं है कि यह इतना लंबा क्यों लगता है, किसी को भी कोई विचार है? के लिए द्वितीयक थ्रेड में यूआई अद्यतन करने का
कि इसे ठीक किया गया धन्यवाद रिकिक्स –
मुझे यकीन नहीं है कि यह नमूना केवल टेस्ट 3 और टेस्ट 4 क्यों प्रिंट कर रहा है और एक्सकोड 6.1.1 के साथ मेरे लिए test5 दिखा रहे लेबल के साथ समाप्त होता है। मैंने कोड को एक नए एकल दृश्य स्विफ्ट प्रोजेक्ट में कॉपी किया और एक लेबल और बटन को जोड़ा। मेरा परिनियोजन लक्ष्य ओएस आईओएस 8.1 है। एक्सकोड इसे तब तक नहीं चलाएगा जब तक कि मैंने "डेटाटास्क विथ्लर (यूआरएल)' "डेटा" डेटा टास्क विथ्लर (यूआरएल!) '" (विस्मयादिबोधक बिंदु के साथ) बदल दिया है, लेकिन यह नमूना कोड में केवल एक ही बदलाव है। मेरे कंप्यूटर में एक इंटरनेट कनेक्शन है, और मैंने सिम्युलेटर और आईफोन पर चलने की कोशिश की। लेबल अभी भी 5 मिनट के बाद "test5" कहता है। क्या मुझे कुछ याद आ रही है? धन्यवाद। – miker
त्रुटि चर में क्या है? आपका यूआरएल कॉल असफल होना चाहिए। – Rikkles