मैं वर्तमान में NSUserDefaults के लिए एक कस्टम स्विफ्ट वर्ग को बचाने की कोशिश कर रहा हूं। यहाँ मेरे खेल के मैदान से कोड है:
import Foundation
class Blog : NSObject, NSCoding {
var blogName: String?
override init() {}
required init(coder aDecoder: NSCoder) {
if let blogName = aDecoder.decodeObjectForKey("blogName") as? String {
self.blogName = blogName
}
}
func encodeWithCoder(aCoder: NSCoder) {
if let blogName = self.blogName {
aCoder.encodeObject(blogName, forKey: "blogName")
}
}
}
var blog = Blog()
blog.blogName = "My Blog"
let ud = NSUserDefaults.standardUserDefaults()
ud.setObject(blog, forKey: "blog")
जब मैं कोड चलाता हूं, तो मुझे निम्न त्रुटि मिलती है
निष्पादन बाधित हुआ, कारण: संकेत SIGABRT।
अंतिम पंक्ति में ( ud.setObject
...)
मैसेज वाले ऐप में भी यही कोड क्रैश हो जाता है
"प्रारूप के लिए संपत्ति की सूची अमान्य: 200 (संपत्ति सूची में 'CFType' प्रकार की वस्तुएं नहीं हो सकती हैं)"
क्या कोई मदद कर सकता है? मैं Maverick पर Xcode 6.0.1 का उपयोग कर रहा हूं। धन्यवाद।