• ios-model数据结构


    主要作用:简化VC代码,便于请求数据中字段的增、删、查、找,以及后期代码维护。

    一、构建Model。

    创建继承于NSObject的PlaceOrderModel

    #import <Foundation/Foundation.h>
    
    @interface PlaceOrderModel : NSObject
    
    //保证下面的字段和请求的字段相同即可,添加新字段时可直接使用,新字段对旧字段没有影响
    @property (nonatomic,strong) NSString * provinceName;
    @property (nonatomic,strong) NSString * cityName;
    @property (nonatomic,strong) NSString * countyName;
    @property (nonatomic,strong) NSString * unitName;
    
    @property (nonatomic,strong) NSString * address;
    @property (nonatomic,strong) NSString * contact;
    @property (nonatomic,strong) NSString * phone;
    
    +(instancetype)ModelWithDic:(NSMutableDictionary*)dic;
    
    @end
    #import "PlaceOrderModel.h"
    
    @implementation PlaceOrderModel
    
    +(instancetype)ModelWithDic:(NSMutableDictionary *)dic
    {
        PlaceOrderModel *model=[[PlaceOrderModel alloc]init];
        [model setValuesForKeysWithDictionary:dic];
        return model;
    }
    
    -(void)setValue:(id)value forUndefinedKey:(NSString *)key
    {
        if ([key isEqualToString:@""]) {
            NSLog(@"数据不对");
        }
        
    }

    二、在VC中调用PlaceOrderModel

                        PlaceModel = [PlaceOrderModel ModelWithDic:_dataSouce[i]];
                        NSString * cityName = nil;
                        if ([PlaceModel.provinceName isEqualToString:PlaceModel.cityName]) {
                            cityName = [NSString stringWithFormat:@"%@%@",PlaceModel.provinceName,PlaceModel.countyName];
                        }else{
                            cityName = [NSString stringWithFormat:@"%@%@%@",PlaceModel.provinceName,PlaceModel.cityName,PlaceModel.countyName];
                        }
                        
                        cell.CityName.text = cityName;
                        cell.AddressName.text = PlaceModel.address;
                        NSString * people = [NSString stringWithFormat:@"%@ %@",PlaceModel.contact,PlaceModel.phone];
                        cell.PeopleName.text = people;
  • 相关阅读:
    Linux Namespace : IPC
    Linux Namespace : UTS
    Linux Namespace : 简介
    《Two Dozen Short Lessons in Haskell》(二十四)代数类型
    为期近五个月的英语培训班总结
    GTD实践2周年后一些体会
    读书笔记2013第10本:《学得少却考得好Learn More Study Less》
    读书笔记2013第9本:《注意力曲线----打败分心与焦虑》
    《Two Dozen Short Lessons in Haskell》(二十二)递归
    GIF图片合集(用于网络请求图片用)
  • 原文地址:https://www.cnblogs.com/sayimba/p/6097056.html
Copyright © 2020-2023  润新知