懒加载:
1.通过字典写模型:
字典(plist文件)里有3个键值对,所以模型里有3个属性,尽量让模型里属性的名称和字典里的key一样,新建模型的时候,除了把属性写完,还需要封装两个方法,一个initWithDic方法(-),一个类名WithDic方法(+),返回值类型都是instancetype。
//self.title=dict[@“title”];
//self.desc=dict[@“desc”];
//self.cars=dict[@“cars”];
[self setValuesForKeysWithDictionary:dict];这一句话搞定所有,不管多少个,但是属性的名字一定要和键的名字一样
2.懒加载
@property(nonatomic,strong)NSarray *groups;
然后重写这个属性的get方法
-(NSArray *)groups
{
//如果为空,进行懒加载
if(_groups==nil){
//1.找到plist文件的路径
NSString *path=[[NSBundle mainBundle]pathForResource:@“什么什么.plist” ofType:nil];
//2.加载plist文件(plist文件整体是什么类型,就用什么类型加载)
NSArray *arrayDict=[NSArray arrayWithContentsOfFile:path];
//3.把字典转成模型
NSMutableArray *arrayModel=[NSMutableArray array];
//遍历字典数组中的每个字典,把每个字典转成模型,把模型放到arrayModel数组中
for(NSDictionary *dict in arrayDict)
{
//创建模型对象
CZGroup *model=[CZGroup groupWithDict:dict];
[arrayModel addObject:model];
}
//4.赋值
_groups=arrayModel;
}
//5.返回
return _groups;
}
网友评论