字符串我的字符串cast NSString!在迅速
var name: String
我的类实现NSCoding协议有一个实例变量名。所以对于我的名字
func encodeWithCoder(aCoder: NSCoder) {
aCoder.encodeObject(self.name, forKey: kName)
}
required init(coder aDecoder: NSCoder) {
self.name = aDecoder.decodeObjectForKey(kName) as String // CRASH HERE
}
结果?我在解码器启动时遇到了运行时崩溃。我改变了初始化为:
var temp = aDecoder.decodeObjectForKey(kName) as NSString!
self.name = aDecoder.decodeObjectForKey(kName) as String
并意识到价值temp是持有正确的NSString值。所以我认为,线下是要解决它,但它发出一个链接错误:
self.name = aDecoder.decodeObjectForKey(kName) as NSString!
的问题是如何采取临时,放入名字?
进行尝试:'self.name = aDecoder.decodeObjectForKey(kName)作为AnyObject!作为字符串' – 2014-09-20 08:40:09
感谢您的答案,但它仍然崩溃。 – Arash 2014-09-21 06:11:36