TableView中Model层数据

TableView中Model层数据
一、如果plist文件中的形式:NSArray —> NSDictionary —>NSArray
最外层的字典
+ ( instancetype )carGroupsWithDict:( NSDictionary *)dict
{
   
return [[ self alloc ] initWithDict :dict];
}

- (
instancetype )initWithDict:( NSDictionary *)dict
{
   
self = [ super init ];
    [
self setValue :dict[ @"title" ] forKey : @"title" ];
   
self . carGroups = [ SUNCar carsWithArray :dict[ @"cars" ]];
   
return self ;
}

+ (
NSArray *)carGroups
{
   
NSArray *array = [ NSArray arrayWithContentsOfFile :[[ NSBundle mainBundle ] pathForResource : @"cars_total.plist" ofType : nil ]];
   
NSMutableArray *arrayM = [ NSMutableArray array ];
   
for ( NSDictionary *dict in array) {
        [arrayM
addObject :[ self carGroupsWithDict :dict]];
    }
   
return arrayM;
}

最里层的数组
+ ( instancetype )carWithDict:( NSDictionary *)dict
{
   
return [[ self alloc ] initWithDict :dict];
}

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

+ (
NSArray *)carsWithArray:( NSArray *)array
{
   
NSMutableArray *arrayM = [ NSMutableArray array ];
   
for ( NSDictionary *dict in array) {
        [arrayM
addObject :[ self carWithDict :dict]];
    }
        
return arrayM;
}

二、 如果plist文件中的形式:NSArray —> NSDictionary 
+ ( instancetype )tgWithDict:( NSDictionary *)dict
{
   
return [[ self alloc ] initWithDict :dict];
}
- (
instancetype )initWithDict:( NSDictionary *)dict
{
   
self = [ super init ];
   
if ( self ) {
        [
self setValuesForKeysWithDictionary :dict];
    }
   
return self ;
}

+ (
NSMutableArray *)tgs
{
   
NSArray *array = [ NSArray arrayWithContentsOfFile :[[ NSBundle mainBundle ] pathForResource : @"tgs.plist" ofType : nil ]];
   
   
NSMutableArray *arrayM = [ NSMutableArray array ];
   
for ( NSDictionary *dict in array) {
        [arrayM
addObject :[ self tgWithDict :dict]];
    }
   
return arrayM;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值