1. Plist → 模型數(shù)組
控制器中引用#import "MJExtension.h"
模型數(shù)組 = [模型類名 objectArrayWithFilename:@"文件名.plist"];
2. 對NSLog的優(yōu)化,解決 調(diào)試時,打印模型锄俄,只打印出內(nèi)存地址的問題
使用方法:在模型類的.m文件中,引用#import "MJExtension.h"
在@implementation 和 @end之間塑猖,寫上MJLogAllIvrs
3. 對NSCoding的優(yōu)化蜡励,不用再寫繁瑣的解檔和歸檔方法了
使用方法:在模型類的.m文件中扮碧,引用#import "MJExtension.h"
在@implementation 和 @end之間赖淤,寫上MJCodingImplementation
4. 字典數(shù)組 → 模型數(shù)組
4.1 場景一: [ ?字典1蠕嫁,
字典2搂赋,
字典3? ]
如果每個字典都是一個模型,可以用
NSArray *modelArray = [模型類名 objectArrayWithKeyValuesArray:字段數(shù)組];
4.2 場景二:在場景一的基礎(chǔ)上酸休,每個字典里面斑司,有數(shù)組(假設(shè)數(shù)組的key值是arrayName),數(shù)組里面存放著若干個相同的模型,使用下面的方法
使用方法:
首先在模型類.m文件中,引入#import "MJExtension.h"
然后在 @implementation 和 @end之間 寫上
+ (NSDictionary *)objectClassInArray
{
return @{@"arrayName" : [模型類名 class]};
}
5.?如果 服務(wù)器傳過來的 字典數(shù)組里的字典的Key是目,是OC里的關(guān)鍵字冤今,而使用MJExtention的前提是,模型里的屬性名和數(shù)組的key一致才行(區(qū)分大小寫),怎么辦阶淘?
使用replacedKeyFromPropertyName
使用方法:1.在模型類.m文件引入"MJExtension.h"
2.實現(xiàn)方法
+ (NSDictionary *)replacedKeyFromPropertyName
{
return @{@“非關(guān)鍵字的屬性名” : @“數(shù)組的key”};
}
6. 單個字典 → 單個模型
+ (instancetype)objectWithKeyValues:(NSDictionary *)keyValues
+ (NSDictionary*)objectClassInArray
{
return@{@"actionList": [TrainActionListModelclass]};
}