分享

iOS Json解析框架之MJExtension使用详解

 my_iOS 2015-09-16

标签:class   log   使用   si   文件   it   问题   la   方法   

1. Plist → 模型数组

控制器中引用#import "MJExtension.h"

 模型数组 = [模型类名 objectArrayWithFilename:@"文件名.plist"];

 

2. 对NSLog的优化,解决 调试时,打印模型,只打印出内存地址的问题

使用方法:在模型类的.m文件中,引用#import "MJExtension.h"

在@implementation 和 @end之间,写上MJLogAllIvrs

 

3. 对NSCoding的优化,不用再写繁琐的解档和归档方法了

使用方法:在模型类的.m文件中,引用#import "MJExtension.h"

在@implementation 和 @end之间,写上MJCodingImplementation

 

4. 字典数组 → 模型数组

4.1 场景一: [  字典1,

        字典2,

        字典3  ]

如果每个字典都是一个模型,可以用

NSArray *modelArray = [模型类名 objectArrayWithKeyValuesArray:字段数组];

 

4.2 场景二:在场景一的基础上,每个字典里面,有数组(假设数组的key值是arrayName),数组里面存放着若干个相同的模型,使用下面的方法

使用方法:

首先在模型类.m文件中,引入#import "MJExtension.h"

然后在 @implementation 和 @end之间 写上

- (NSDictionary *)objectClassInArray

{

    return @{@"arrayName" : [模型类名 class]};

}

 

 5. 如果 服务器传过来的 字典数组里的字典的Key,是OC里的关键字,而使用MJExtention的前提是,模型里的属性名和数组的key一致才行(区分大小写),怎么办?

使用replacedKeyFromPropertyName

使用方法:1.在模型类.m文件引入"MJExtension.h"

    2.实现方法

+ (NSDictionary *)replacedKeyFromPropertyName

{

    return @{@“非关键字的属性名” : @“数组的key”};

}

 

6. 单个字典 → 单个模型

+ (instancetype)objectWithKeyValues:(NSDictionary *)keyValues

 

iOS Json解析框架之MJExtension使用详解

标签:class   log   使用   si   文件   it   问题   la   方法   

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多