从事iOS工作也有两年多了.iOS开发就更久了.说到转模型还是比较喜欢用YYModel框架.当然,期间也用过MJExtension等三方转模型框架.
为什么都喜欢转模型.最开始使用YYModel的时候觉得有一点.就是使用值的时候方便.如果是一个字典传来传去.做非空判断就特别的麻烦.传值的时候也要判断是Float啊还是什么类型.就特别麻烦.开发过iOS的应该都懂.但是用YYModel之后就特别方便.我准备用几篇文章来讲讲YYModel的使用.
1. 首先.NSDictionary转model
+ (nullable instancetype)yy_modelWithDictionary:(NSDictionary *)dictionary;
这个可以将普通字典通过键值对的形式转换成Model.Key就是模型中的字段,例如
NSDictionary *dic = @{
@"name":@"Haha",
}
///我在模型类中声明
@property (nonatomic ,strong) NSString *name;
TextModel *model = [TextModel yy_modelWithDictionary:dic]:
///那么NSLog出来model.name就是@"Haha".
是不是和以下俩方法做的工作差不多
- (void)setValuesForKeysWithDictionary:(NSDictionary<NSString *,id> *)keyedValues{}
- (void)setValue:(id)value forUndefinedKey:(NSString *)key
2.Json转模型
类似上面的NSDictionary转模型
///注意到这个id了么.直接把网络请求下来的json文件给他就行了
+ (nullable instancetype)yy_modelWithJSON:(id)json;