Swift 4.0 KVC 字典转模型

import Foundation
class NewsMode: NSObject {
 
    // 定义属性  swift 4.0 之后需要手动添加@objc 否则转模型会没有值
    @objc var replyCount:Int = 0
    @objc var title:String = ""
    @objc var source:String = ""
    @objc var imgsrc:String = ""

    // f定义字典类型的搞糟函数
    init(initdict:[String:Any]) {
        super.init()
        // 通过kvc 字典转模型
      setValuesForKeys(initdict)
//        if let titleStr = initdict["title"] as? String {
//                self.title = titleStr
//        }

        // 注意: 由于字典的里面某些Key模型里面没有 所以需要重写 setValue方法
    }
    
  override func setValue(_ value: Any?, forUndefinedKey key: String) {
        
        print("----\(String(describing: value))")
    }
    

    
    
}

你可能感兴趣的:(Swift 4.0 KVC 字典转模型)