0

我正在尝试使用NSKeyedArchiver. 树中的所有节点都支持NSCoding,但我无权访问源代码,因此无法更改任何内容。但是,我想NSString在编码期间包含一些节点的附加信息。取消归档时,我想获取该字符串(如果可用)并根据该字符串的内容进行一些额外的设置。

我怎么能以优雅的方式做到这一点?我想在编码的时候替换一个子类,在子类中实现额外的编码。并使子类initWithCoder:返回一个超类的实例,正确初始化和设置。问题在于,我的树中可能有节点类的“真实”子类。如果对这样的子类进行编码,则替换将不起作用。或者至少我不知道如何。

目前我正在研究子类化 NSKeyedArchiver,但我不确定我可以在哪里注入任何东西,或者这是否是一个好方法。

4

0 回答 0