当在Swift中实现NSCoding时崩溃报错:replacementObjectForKeyedArchiver:

问题:
自定义模型类CommonConfigModel实现了NSCoding协议和对应方法实现后运行仍然报错!

class CommonConfigModel:NSCoding,Mappable {
  // 归档
  func encode(with aCoder: NSCoder) {
    ...
  }
  // 解档
  required init?(coder aDecoder: NSCoder) {
    ...
  }
}

解决方法:

虽然Swift类工作没有超类声明。你必须声明的超类NSObject为了使NSCoding工作!
所以,只需添加NSObject超类到类声明。

class CommonConfigModel: NSObject,NSCoding,Mappable {
  ...
}

你可能感兴趣的:(当在Swift中实现NSCoding时崩溃报错:replacementObjectForKeyedArchiver:)