zoukankan      html  css  js  c++  java
  • IOS 字典转模型

    用模型存放字典上的内容,方便使用

    一、创建类MJHero

    1、在头文件声明属性,声明对象方法,类方法 

    #import <Foundation/Foundation.h>

    @interface MJHero : NSObject
    @property (nonatomic, copy) NSString *name;
    @property (nonatomic, copy) NSString *icon;
    @property (nonatomic, copy) NSString *intro;

    + (instancetype)heroWithDict:(NSDictionary *)dict;
    - (instancetype)initWithDict:(NSDictionary *)dict;
    @end

    2、在.m实现方法

    #import "MJHero.h"

    @implementation MJHero
    + (instancetype)heroWithDict:(NSDictionary *)dict
    {
        return [[self alloc] initWithDict:dict];
    }

    - (instancetype)initWithDict:(NSDictionary *)dict
    {
        if (self = [super init]) {
            [self setValuesForKeysWithDictionary:dict];
        }
        return self;
    }
    @end

    二、在ViewController.m中添加数组和get方法

    #import "MJViewController.h"
    #import "MJHero.h"

    @property (nonatomic, strong) NSArray *heros;

    - (NSArray *)heros
    {
        if (_heros == nil) {
            // 初始化
            // 1.获得plist的全路径
            NSString *path = [[NSBundle mainBundle] pathForResource:@"heros.plist" ofType:nil];
            
            // 2.加载数组
            NSArray *dictArray = [NSArray arrayWithContentsOfFile:path];
            
            // 3.将dictArray里面的所有字典转成模型对象,放到新的数组中
            NSMutableArray *heroArray = [NSMutableArray array];
            for (NSDictionary *dict in dictArray) {
                // 3.1.创建模型对象
                MJHero *hero = [MJHero heroWithDict:dict];
                
                // 3.2.添加模型对象到数组中
                [heroArray addObject:hero];
            }
            
            // 4.赋值
            _heros = heroArray;
        }
        return _heros;
    }

     
  • 相关阅读:
    permission 文档 翻译 运行时权限
    TabLayout ViewPager Fragment 简介 案例 MD
    Log 日志工具类 保存到文件 MD
    OkHttp 官方wiki 翻译 MD
    Okhttp 简介 示例 MD
    OkHttp 官方Wiki之【使用案例】
    DialogPlus
    倒计时 总结 Timer Handler CountDownTimer RxJava MD
    RecyclerView 判断滑到底部 顶部 预加载 更多 分页 MD
    CSS3的媒体查询(Media Queries)与移动设备显示尺寸大全
  • 原文地址:https://www.cnblogs.com/zhongxuan/p/4858987.html
Copyright © 2011-2022 走看看