懒加载中进行字典转模型
生活随笔
收集整理的這篇文章主要介紹了
懒加载中进行字典转模型
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
假設有一個flags.plist文件
ZWFlags.h
1 #import <Foundation/Foundation.h> 2 @interface ZWFlags : NSObject 3 /** 國旗名字 */ 4 @property (strong, nonatomic)NSString *name; 5 6 /** 國旗圖片 */ 7 @property (strong, nonatomic)NSString *icon; 8 9 + (instancetype)flagsWithDict:(NSDictionary *)dict; 10 11 @endZWFlags.m
#import "ZWFlags.h" @interface ZWFlags() @end @implementation ZWFlags+ (instancetype)flagsWithDict:(NSDictionary *)dict {ZWFlags *flags = [[self alloc] init]; //此處的self不能用ZWFlagsflags.name = dict[@"name"];flags.icon = dict[@"icon"]; //此處兩句也可以直接寫成[flags setValuesForKeysWithDictionary:dict]; return flags; } @end在需要使用的控制器中
1 #import "ViewController.h" 2 #import "ZWFlags.h" 3 /** 所有國旗的數據 */ 4 @property (strong, nonatomic)NSMutableArray *flags; 5 6 @end 7 8 @implementation ViewController 9 10 - (NSMutableArray *)flags 11 { 12 if (_flags == nil) { 13 //裝flag模型 14 _flags =[NSMutableArray array]; 15 // 加載plist數據 16 NSString *path = [[NSBundle mainBundle] pathForResource:@"flags.plist" ofType:nil]; 17 NSArray *arr = [NSArray arrayWithContentsOfFile:path]; 18 // 字典轉模型 19 for (NSDictionary *dict in arr) { 20 ZWFlags *flag = [ZWFlags flagsWithDict:dict]; 21 [_flags addObject:flag]; 22 } 23 } 24 return _flags; 25 }經常看到下面一種,不過上面的簡單一些
1 #import "ViewController.h" 2 #import "ZWFlags.h" 3 /** 所有國旗的數據 */ 4 @property (strong, nonatomic)NSArray *flags; 5 6 @end 7 @implementation ViewController 8 9 - (NSArray *)flags 10 { 11 if (_flags == nil) { 12 //加載plist文件 13 NSString *path = [[NSBundle mainBundle] pathForResource:@"flags.plist" ofType:nil]; 14 NSArray *dictArr = [NSArray arrayWithContentsOfFile:path]; 15 16 //字典轉模型 17 NSMutableArray *flagArray = [NSMutableArray array]; 18 for (NSDictionary *dict in dictArr) { 19 ZWFlags *flag = [ZWFlags flagsWithDict:dict]; 20 [flagArray addObject:flag]; 21 } 22 _flags = flagArray; 23 } 24 return _flags; 25 }?
轉載于:https://www.cnblogs.com/hissia/p/5432523.html
總結
以上是生活随笔為你收集整理的懒加载中进行字典转模型的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 动态可订制属性的 PropertyGri
- 下一篇: 有趣的话