欢迎使用CSDN-markdown编辑器
2016-11-03 16:11
120 查看
简单的描述一下字典转模型
含义:
把字典中的数据使用模型来保存.新建一个类,根据字典中键值对的个数,来编写这个类中的属性,将来用这个类的对象的属性来保存字典中每个键对应的值.
思路:
1>根据字典编写模型类
2>字典传模型的过程最好封装在模型内部
3>在模型类中分别编写一个根据字典创建模型的实例方法和类方法,并且实现.
- (instancetype)initWithDict:(NSDictionary *)dict;
- (instancetype)initWithDict:(NSDictionary *)dict
{
if (self = [super init])
{
[self setValuesForKeysWithDictionary:dict];
}
+ (instancetype)xxxWithDict:(NSDictionary *)dict;
//重写get懒加载
- (NSArray *)apps
{
if (_apps == nil)
{
NSString *path = [[NSBundle mainBundle] pathForResource:@”apps.plist” ofType:nil];
NSArray *arrayDict = [NSArray arrayWithContentsOfFile:path];
//定义可变数组用来存储模型
NSMutableArray *arrayM = [NSMutableArray array];
for (NSDictionary *dict in arrayDict)
{
App *model = [[App alloc] initWithDict:dict];
[arrayM addObject:model];
}
_apps = arrayM;
}
return _apps;
}
含义:
把字典中的数据使用模型来保存.新建一个类,根据字典中键值对的个数,来编写这个类中的属性,将来用这个类的对象的属性来保存字典中每个键对应的值.
思路:
1>根据字典编写模型类
2>字典传模型的过程最好封装在模型内部
3>在模型类中分别编写一个根据字典创建模型的实例方法和类方法,并且实现.
- (instancetype)initWithDict:(NSDictionary *)dict;
- (instancetype)initWithDict:(NSDictionary *)dict
{
if (self = [super init])
{
[self setValuesForKeysWithDictionary:dict];
} return self;
}
+ (instancetype)xxxWithDict:(NSDictionary *)dict;
//重写get懒加载
- (NSArray *)apps
{
if (_apps == nil)
{
NSString *path = [[NSBundle mainBundle] pathForResource:@”apps.plist” ofType:nil];
NSArray *arrayDict = [NSArray arrayWithContentsOfFile:path];
//定义可变数组用来存储模型
NSMutableArray *arrayM = [NSMutableArray array];
for (NSDictionary *dict in arrayDict)
{
App *model = [[App alloc] initWithDict:dict];
[arrayM addObject:model];
}
_apps = arrayM;
}
return _apps;
}
相关文章推荐
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器ss
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器