2015-08-19 14 views
5

का उपयोग कैसे मैं निम्नलिखित कोड है:स्विफ्ट 2 और 3: CGBitmapContextCreate

let ref:CGContextRef = CGBitmapContextCreate(nil , 200, 130, CGImageGetBitsPerComponent(self.CGImage), 0, CGImageGetColorSpace(self.CGImage), CGImageGetBitmapInfo(self.CGImage)) 

समस्या यह है कि मैं इस त्रुटि मिलती है:

अभिव्यक्ति टाइप करने के लिए 'NilLieralConvertible'

अनुरूप नहीं है क्या क्या मुझे पहले तर्क के लिए शून्य के बजाय पास करना चाहिए और क्यों?

उत्तर

12

समस्या अंतिम तर्क है। अंतिम तर्क CGImageGetBitmapInfo(self.CGImage).rawValue बनाएं।

+0

काम करता है! अब पता लगाने की कोशिश क्यों कर रहा है। – zumzum

+3

ऐसा इसलिए है क्योंकि स्विफ्ट 2.0 में बिटमैस्क प्रकारों की प्रकृति पूरी तरह से बदल गई है। और CGBitmapInfo एक बिटमास्क प्रकार है। – matt

+1

स्विफ्ट 3 के लिए भी काम करता है –