iOS UI篇 - plist文件字典转模型
来源:互联网 发布:淘宝宝贝上传图片问题 编辑:程序博客网 时间:2024/05/21 10:04
plist文件字典转模型
1.首先定义一个成员变量,存放所需的数据. 即:NSArray *apps#pragma mark - 重写apps的getter方法-(NSArray *)apps{ if (_apps == nil) { //加载plist文件 NSString *path = [[NSBundle mainBundle]pathForResource:@"app.plist" ofType:nil]; //plist文件里的字典存放在一个数组当中 NSArray *dictArray = [[NSArray alloc]initWithContentsOfFile:path]; //创建一个可变数组用来存放模型数据(字典转的模型) NSMutableArray *appArray = [NSMutableArray array]; //遍历数组(plist文件中数组存放的都是字典对象随意使用NSDictionary *dict) //下面需要创建模型(就是一个用来存放数据的类). for (NSDictionary *dict in dictArray) { //这里使用了一个小方法:需求驱动方法(本身AppModel中没有initWithDict构造方法) AppModel *app = [[AppModel alloc]initWithDict:dict]; //将所有的AppModel模型都放在前面定义的NSMutableArray *appArray数组中 [appArray addObject:app]; } //将可变可变数组appArray中的模型数据赋值给成员变量_apps数组 _apps = appArray; } return _apps;}2. 创建数据模型(上文中的 AppModel类)//下面是模型类的.h文件#import <Foundation/Foundation.h>@interface AppModel : NSObject//类中声明两个属性与字典中的key一样@property (nonatomic,copy) NSString *icon;@property (nonatomic,copy) NSString *name;//定义一个构造方法和一个快速创建对象的类方法-(instancetype)initWithDict:(NSDictionary *)dict;+(instancetype)modelWithDict:(NSDictionary *)dict;@end//下面是模型类.m文件#import "AppModel.h"@implementation AppModel//重写构造方法 此方法是固定的-(instancetype)initWithDict:(NSDictionary *)dict{ if (self = [super init]) { self.name = dict[@"name"]; self.icon = dict[@"icon"]; } return self;}//提供一个类时,最好提供一个类方法(即静态方法),调用构造方法快速创建类对象+(instancetype)modelWithDict:(NSDictionary *)dict{ return [[self alloc]initWithDict:dict];}@end
0 0
- iOS UI篇 - plist文件字典转模型
- IOS学习之——字典转模型 加载plist
- iOS开发UI篇—字典转模型
- iOS开发UI篇—字典转模型
- iOS开发UI篇—字典转模型
- iOS开发UI篇—字典转模型
- IOS开发UI字典转模型
- 字典转模型&加载xib&加载plist
- IOS--UI--通讯录实战--Plist 取文件
- iPhone开发之字典转模型——利用创建plist文件和懒加载
- Plist文件、HUD、字典转模型、纯代码封装View、XIB封装View
- 171,.plist文件中字典数据转成程序模型
- IOS字典转模型
- ios 字典转模型
- iOS 字典转模型
- iOS 字典转模型
- iOS 字典转模型
- ios-字典转模型
- RxJava初探
- k-means算法讲解
- VirtualBox RedHat 6.7 64位服务器yum+增强工具
- Win7窗口最大化和最小化快捷键
- ThreadLocal内部机制及使用方法
- iOS UI篇 - plist文件字典转模型
- Android开发错误集锦
- Agile Java(第一章)
- 关于ssh: connect to host master port 22: Connection timed out问题的总结
- 15个最容易得罪人的行为,却常常被我们忽略
- BeanPropertyRowMapper使用注意事项
- 防止c程序运行一闪而过
- android开发书籍推荐 重零开始
- 二维码生成工厂