建立模型时可能会出现解析的文件中包含UI里的关键字,比如说id,description,self
解决方法有2.
1.换一个名字作为成员变量的名字,对成员变量逐一赋值,但这个方法不太方便,当变量名太多时书写会很不方便.
2.当然有方法少写些代码,
给_myDescription赋值时调用setDescription:
@property(nonatomic,copy,setter=setDescription:)NSString * myDescription;
-(void)setValue:(id)value forUndefinedKey:(NSString *)key
{
//如果字典中有个名为description的key,但是类中不能定义名为description的属性,可以定义myDescription存储description的值
if([key isEqualToString:@"description"]){
self. myDescription=value;
}
NSLog(@"%@",key);
}
这是在使用[model setValuesForKeysWithDictionary:dic];时才会调用
dic里键对应的是模型里的成员变量名,值是要赋的值;这个方法会将字典模型中成员变量名与dic里键名相同的的值赋给model.