我什么时候应该使用initWithCoder:方法?
答案 0 :(得分:11)
是的,如果您在IB中使用自定义类,则使用initWithCode:
方法实例化这些对象。因此,在您的课程中,您将覆盖:
-(id) initWithCoder:(NSCoder*)aDecoder {
if (! (self = [super initWithCoder:aDecoder]))
return nil;
// object has been created from IB... do initialization stuff here
return self;
}
答案 1 :(得分:5)
在处理已归档的对象时,应该使用initWithCoder:
方法。例如,当您专门使用NSKeyedUnarchiver
创建这些存档对象时,或者需要将自定义初始化代码添加到来自xib文件的对象时。