解析数据时,快速查看当前需要创建的数据模型的所有属性,不用每个都写,直接打印粘贴
Posted 成长在于积累
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解析数据时,快速查看当前需要创建的数据模型的所有属性,不用每个都写,直接打印粘贴相关的知识,希望对你有一定的参考价值。
创建一个NSDictionary类别:
#import <Foundation/Foundation.h> /** 根据网络请求返回的字典数据,写对应的模型。当属性多时,用手写很费功夫,可用这个类快速打印出所有的模型属性,直接粘贴即可 */ @interface NSDictionary (PropertyCode) //生成需要的属性代码 - (void)getPropertyCode; @end
#import "NSDictionary+PropertyCode.h" @implementation NSDictionary (PropertyCode) //生成需要的属性代码 - (void)getPropertyCode{ NSMutableString *codes = [NSMutableString string]; //遍历字典在所有的key一一对应 [self enumerateKeysAndObjectsUsingBlock:^(id _Nonnull key, id _Nonnull obj, BOOL * _Nonnull stop) { //key:属性名 NSString *code; if ([obj isKindOfClass:[NSString class]]) { code = [NSString stringWithFormat:@"@property (nonatomic ,strong) NSString *%@",key]; } else if ([obj isKindOfClass:NSClassFromString(@"__NSCFBoolean")]){ code = [NSString stringWithFormat:@"@property (nonatomic ,assign) BOOL %@;",key]; } else if ([obj isKindOfClass:[NSArray class]]) { code = [NSString stringWithFormat:@"@property (nonatomic ,strong) NSArray *%@",key]; } else if ([obj isKindOfClass:[NSDictionary class]]) { code = [NSString stringWithFormat:@"@property (nonatomic ,strong) NSDictionary *%@",key]; } else if ([obj isKindOfClass:[NSNumber class]]) { code = [NSString stringWithFormat:@"@property (nonatomic ,assign) NSInteger *%@",key]; } [codes appendFormat:@"\n%@\n",code]; }]; NSLog(@"数据模型属性------\n%@",codes); } @end
以上是关于解析数据时,快速查看当前需要创建的数据模型的所有属性,不用每个都写,直接打印粘贴的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 retorfit2 创建用于解析 Json 的通用模型类?