iOS加载本地Json文件,b并转为模型数据
2015-10-17 22:28
1366 查看
- (NSArray *)lianxis { if (_lianxis == nil) { //JSON文件的路径 NSString *path = [[NSBundle mainBundle] pathForResource:@"lianxis.json" ofType:nil]; //加载JSON文件 NSData *data = [NSData dataWithContentsOfFile:path]; //将JSON数据转为NSArray或NSDictionary NSArray *dictArray = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil]; //将字典转为数组 NSMutableArray *lianxArray = [NSMutableArray array]; for (NSDictionary *dict in dictArray) { LianxiModel *model = [LianxiModel lianxiWithDict:dict]; [lianxArray addObject:model]; } //赋值 _lianxis = lianxArray; } return _lianxis; }
模型.h
#import <Foundation/Foundation.h> @interface LianxiModel : NSObject /** * 练习按钮上的文字 */ @property(nonatomic,copy)NSString *title; /** * 练习按钮上的图标 */ @property(nonatomic,copy)NSString *icon; - (instancetype)initWithDict:(NSDictionary *)dict; + (instancetype)lianxiWithDict:(NSDictionary *)dict; @end
模型.m
#import "LianxiModel.h" @implementation LianxiModel - (instancetype)initWithDict:(NSDictionary *)dict { if (self = [super init]) { self.icon = dict[@"icon"]; self.title = dict[@"title"]; } return self; } + (instancetype)lianxiWithDict:(NSDictionary *)dict { return [[self alloc] initWithDict:dict]; } @end
相关文章推荐
- iOS设计模式 - 命令
- 写iOS SDK注意事项
- iOS辅助功能Accessibility浅析
- iOS知识点
- cisco 10条IOS管理命令
- iOS应用沙盒机制浅析
- iOS之Xcode设置点滴记录(一)
- iOS_官方例子汇总下载
- iOS UDP编程
- 解决三星 BIOS 模式没有 Fast Bios Mode选项 U盘动项问题
- 中国的手写输入法iOS8.1在崩溃
- iOS基础知识:if 语句以及if语句的使用注意事项
- ios-屏幕适配masonry的使用
- iOS 如何调用打电话发短信等功能
- 界面多个小view布局的九宫格算法
- IOS绘制图片水印以及文字水印
- 整状态栏颜色
- ios常用第三方框架
- iOS项目实现SVN代码管理方法③(Part 三)
- iOS控件 不能够交互的几种情况