मेरे ऐप में मेरे पास एक फ़ंक्शन है जो एक NSRURLSession बनाता है और एक NSURLRequest का उपयोग करके भेजता है
sesh.dataTaskWithRequest(req, completionHandler: {(data, response, error)
इस कार्य के लिए पूरा होने वाले ब्लॉक में, मुझे कुछ गणना करने की आवश्यकता है जो कॉलिंग व्यू कंट्रौलर में एक UIImage जोड़ता है। मुझे एक फंक कहा जाता है
func displayQRCode(receiveAddr, withAmountInBTC:amountBTC)
यह UIImage- जोड़ गणना करता है। अगर मैं पूर्णता ब्लॉक के अंदर व्यू-एडिंग कोड को चलाने का प्रयास करता हूं, तो Xcode यह कहते हुए एक त्रुटि फेंकता है कि मैं पृष्ठभूमि प्रक्रिया में लेआउट इंजन का उपयोग नहीं कर सकता। इसलिए मैंने SO पर कुछ कोड पाया जो मुख्य थ्रेड पर एक विधि को पंक्तिबद्ध करने की कोशिश करता है:
let time = dispatch_time(DISPATCH_TIME_NOW, Int64(0.0 * Double(NSEC_PER_MSEC)))
dispatch_after(time, dispatch_get_main_queue(), {
let returned = UIApplication.sharedApplication().sendAction("displayQRCode:", to: self.delegate, from: self, forEvent: nil)
})
हालाँकि, मुझे नहीं पता कि इस फ़ंक्शन कॉल में "ReceAddr" और "amountBTC" पैरामीटर को कैसे जोड़ा जाए। मैं यह कैसे करूंगा, या कोई व्यक्ति एप्लिकेशन के मुख्य कतार में एक विधि कॉल जोड़ने के लिए एक इष्टतम तरीका सुझा सकता है?