美文网首页
Swift4.0中KVC存在的问题

Swift4.0中KVC存在的问题

作者: 骑着蜗牛去攻城 | 来源:发表于2018-04-10 22:33 被阅读0次

    1.在swift 4.0中使用系统方法setValuesForKeys()进行赋值,明明有这个属性,但它还是走

    override func setValue(_ value: Any?, forUndefinedKey key: String)

    这个未定义的方法

    在swift 4.0以下就可以正常赋值,只有swift 4.0不行。

    报错:this class is not key value coding-compliant for the key xxxxx。

    解决:在属性前面加上@objc,或者在类的上面加上@objcMembers。原因是因为在Swift 4中继承 NSObject 的 swift class 不再默认全部 bridge 到 OC。

    2.关于Swift字典 - 模型转换时报错:unrecognizedselectorsenttoinstancexxx

    原因:在将字典转换为模型过程中,出现了模型的属性数据类型和字典值的类型不匹配情况;

    解决:将模型中的属性数据类型改为和字典一致;

    相关文章

      网友评论

          本文标题:Swift4.0中KVC存在的问题

          本文链接:https://www.haomeiwen.com/subject/kadohftx.html