我对指定初始化程序有一般性问题。我有一个类,从那里我想调用一个初始化程序,但在我开始用传递数据填充我的@properties 之前,我想将数据设为默认值。例如:
-(id)initWithDefault:(NSDictionary*)defaultTemplate
{
self = [super init];
_fontColor = [defaultTemplate objectForKey:@"color"];
_fontSize = [[defaultTemplate objectForKey:@"size"] intValue];
return self;
}
-(id)initWithTemplate:(NSDictionary*)template
{
self = [self initWithDefault:myDefaultTemplate];
//now i doing something with my template
return self;
}
这是防止 null @properties 的一种方法吗?这是对指定初始化程序的正确使用吗?当然,您可以假设 myDefaultTemplates 不为空,并且键中没有空对象。