iOS快速解析Model
平时开发中,当model的属性特别多时,为了提高开发效率,可以使用runtime特性进行解析数据,但性能可能会受点影响,这个办法需要根据项目综合考量来选择。
-(instancetype) initWithDictionary:(NSMutableDictionary*) jsonObject
{
if((self = [super init]))
{
[self setValuesForKeysWithDictionary:jsonObject];
}
return self;
}
//当可以系统key有冲突时会走这个,如 id ,可以改为userID
- (void)setValue:(id)value forUndefinedKey:(NSString *)key
{
if([key isEqualToString:@"id"]){
self.userID = value;
}
//重写,自定义
-(void) setValue:(id)value forKey:(NSString *)key
{
if([key isEqualToString:@"key"])
{
for(NSMutableDictionary *reviewArrayDict in value)
{
NSLog(@"reviewArrayDict %@",reviewArrayDict);
}
}
else{
[super setValue:value forKey:key];
}
}