使用NSKeyedArchiver归档时包含其他对象

时间:2013-06-24 22:22:04

标签: objective-c macos cocoa nskeyedarchiver nscoding

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

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

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

0 个答案:

没有答案