kvc
kvc 字典转模型
- (void)setValuesForKeysWithDictionary:(NSDictionary *)keyedValues
- //在赋值的过程中,如果发现未声明的Key 会自动调用此方法来处理未声明的key
- - (void)setValue:(id)value forUndefinedKey:(NSString *)key
- {
- if ([key isEqualToString:@"id"]) {
- self.itemId = value;
- } else if([key isEqualToString:@"description"]){
- self.itemDescription = value;
- }else{
- [super setValue:value forUndefinedKey:key];
- }
- }
- //赋值
- - (void)setValue:(id)value forKey:(NSString *)key
- {
- if ([key isEqualToString:@"reviews"]) {
- for (NSMutableDictionary *reviewArrayDic in value) {
- Review *thisReview = [[Review alloc] initWithDictionary:reviewArrayDic];
- [self.reviews addObject:thisReview];
- }
- }else{
- [super setValue:value forKey:key];
- }
- }