/** 将image懒加载,获取图片 使用self.icon给image赋值*/
-(UIImage *)image {
if (_image == nil) {
_image = [UIImage imageNamed:self.icon];
}
return _image;
}
+ (instancetype)appInfoWithDict:(NSDictionary *)dict;
- (instancetype)initWithDict:(NSDictionary *)dict;
+ (NSArray *)appList {
// 用数组接收plist文件的数据,通过[NSArray arrayWithContentsOfFile:[[NSBundle mainBundle] pathForResource: ofType:]]方法
NSArray *array = [NSArray arrayWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"app.plist" ofType:nil]];
NSMutableArray *arrayM = [NSMutableArray array];
for (NSDictionary *dict in array) {
[arrayM addObject:[AppInfo appInfoWithDict:dict]];
}
return arrayM;
}
字典转模型,模型负责所有该模型所具备的属性的实现
1> 创建模型类AppInfo,并且增加相对应的字典键值属性2> initWithDict对象方法3> appInfoWithDict类方法4> 函数返回值instancetype* 只能用于返回类型* 可以辅助类方法做类型推断,在开发时减少错误5> 将模型获取数据的方法AppList也放在模型类中实现6> KVC的使用获取字典值,简化代码7> 增加image属性,将不属于plist中的数据但是属于XIB文件中的需要的数据也放在模型中8> 只读属性和@synthesize合成指令
转载于:https://www.cnblogs.com/LiuLady12138/p/4605512.html