美文网首页iOS学习笔记iOS Developer手机移动程序开发
在swift中 实现实现NSCoding的自动归档和解档

在swift中 实现实现NSCoding的自动归档和解档

作者: CocoaJason | 来源:发表于2017-03-21 16:01 被阅读966次

    1.OC中

    属性比较少的话 ,可以一个属性一个属性的去实现,但是假如多的话就利用runtime,很容易的就实现了NSCoding的自动归档和解档。

    当然我们可以直接调用MJExtension的一个宏定义(MJCodingImplementation),并且调用NSCoding代理,就一句话就可以实现了。

    @implementation DMProductModel
    
    MJCodingImplementation
    
    @end
    

    参考文章:http://www.jianshu.com/p/19f280afcb24

    2.swift

    我们没办法去调用MJExtension的宏定义,但是我们可以调用MJExtension去实现里面的方法:

    下面就是源代码

    
    class BaseModel: NSObject,NSCoding{
        
        //父类的init方法是必须去实现的
        override init() {
            super.init()
        }
        
        required convenience init?(coder aDecoder: NSCoder) {
            self.init()
            self.mj_decode(aDecoder)
        }
        
        func encode(with aCoder: NSCoder) {
            self.mj_encode(aCoder)
        }
    }
    
    

    文件地址:
    https://github.com/MyHZ/HZCoding.git

    接下来 记录一下如何使用 EGOCache存储数据
    http://www.jianshu.com/p/38d719498ea5

    相关文章

      网友评论

        本文标题:在swift中 实现实现NSCoding的自动归档和解档

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