NSUserDefaults 保存自定义对象数组

@class CMBCBusinesseServicesMenuDo;


@interface cmbcBusinesseServicesMenuList : CMBCNSObject

{

    

    NSMutableArray *_menuDOList;

}


@property(nonatomic, copy) NSMutableArray *menuDOList;


-(id)init;



-(void)addBSMenuDoWithName:(NSString *)name URl:(NSString *)Url Module:(NSString *)module imageName:(NSString *)imageName;


-(void)inititalizeDefaultDateList;


@end



@interface CMBCBusinesseServicesMenuDo : CMBCNSObject<NSCoding>

{

    NSString *_aBusinessServiceURL;

    

    NSString *_aBusinessServiceModule;

    

    NSString *_aBusinessServiceName;

    

    NSString *_aBusinessServiceImageName;

}


@property (nonatomic, retain)NSString *aBusinessServiceURL;


@property (nonatomic, retain)NSString *aBusinessServiceModule;


@property (nonatomic, retain)NSString *aBusinessServiceName;


@property (nonatomic, retain)NSString *aBusinessServiceImageName;


+(void)BusinesseServicessSetMenuString:(id)value forKey:(NSString *)defaultName;


+(NSString *)BusinesseServicesMenuStringForkey:(NSString *)defaultName;



+(NSString *)BusinesseServicessStringForkey:(NSString *)defaultName;


+(void)BusinesseServicessSetString:(id)value forKey:(NSString *)defaultName;


+(void)saveBusinessServicesMenuToUserDefault:(id)object;


+(id)getBusinessServicesMenuToUserDefault;


-(id)initMenuDoWithName:(NSString *)name URl:(NSString *)Url Module:(NSString *)module imageName:(NSString *)imageName;

@end


#import "CMBCBusinesseServicesMenuDo.h"


@implementation cmbcBusinesseServicesMenuList


@synthesize menuDOList = _menuDOList;



-(id)init

{

    self = [super init];

    

    if (self) {

        _menuDOList = [[NSMutableArray alloc]init];

    }

    return self;

}



-(void)addBSMenuDoWithName:(NSString *)name URl:(NSString *)Url Module:(NSString *)module imageName:(NSString *)imageName

{

    

    CMBCBusinesseServicesMenuDo *menuDo = [[CMBCBusinesseServicesMenuDo alloc]initMenuDoWithName:name URl:Url Module:module imageName:imageName];

    

    [self.menuDOList addObject:menuDo];

    

    NSData *encodemenulist = [NSKeyedArchiver archivedDataWithRootObject:self.menuDOList];

    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];

    

    [defaults setObject:encodemenulist forKey:@"cmbcmenulist"];

    

}


-(void)inititalizeDefaultDateList

{

    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];

    

    NSData *saveMenulistDaate = [defaults objectForKey:@"cmbcmenulist"];

    

    if (nil == saveMenulistDaate) {

        NSMutableArray *menulistarry = [[NSMutableArray alloc]init];

        

        self.menuDOList = menulistarry;

    }

    else

    {

        self.menuDOList = (NSMutableArray *)[NSKeyedUnarchiver unarchiveObjectWithData:saveMenulistDaate];

    }

}



@end


@implementation CMBCBusinesseServicesMenuDo

@synthesize aBusinessServiceURL = _aBusinessServiceURL;

@synthesize aBusinessServiceModule = _aBusinessServiceModule;

@synthesize aBusinessServiceName = _aBusinessServiceName;

@synthesize aBusinessServiceImageName = _aBusinessServiceImageName;


-(id)init

{

    self = [super init];

    

    if (self) {

        _aBusinessServiceURL = @"url";

        _aBusinessServiceModule = CMBC_NOT_TO_PAY_HIDDE_HEAD;

    }

    return  self;

}


-(id)initMenuDoWithName:(NSString *)name URl:(NSString *)Url Module:(NSString *)module imageName:(NSString *)imageName

{

    self = [super init];

    

    if (self) {

        _aBusinessServiceURL = Url;

        

        _aBusinessServiceImageName = imageName;

        

        _aBusinessServiceName = name;

        

        _aBusinessServiceModule = module;

    }

    return  self;


}


-(void)dealloc

{

    [_aBusinessServiceModule release];

    [_aBusinessServiceURL release];

    [_aBusinessServiceImageName release];

    [_aBusinessServiceName release];

    

    [super dealloc];

}



-(id)initWithCoder:(NSCoder *)aDecoder

{

    if (self = [super init]) {

        self.aBusinessServiceURL = [aDecoder decodeObjectForKey:@"cmbcaBusinessServiceURL"];

        self.aBusinessServiceModule = [aDecoder decodeObjectForKey:@"cmbcaBusinessServiceModule"];

        self.aBusinessServiceName = [aDecoder decodeObjectForKey:@"cmbcaBusinessServiceName"];

        self.aBusinessServiceImageName = [aDecoder decodeObjectForKey:@"cmbcBusinessServiceImageName"];

    }

    return  self;

}


-(void)encodeWithCoder:(NSCoder *)aCoder

{

    [aCoder encodeObject:_aBusinessServiceURL forKey:@"cmbcaBusinessServiceURL"];

    [aCoder encodeObject:_aBusinessServiceModule forKey:@"cmbcaBusinessServiceModule"];

    

    [aCoder encodeObject:_aBusinessServiceName forKey:@"cmbcaBusinessServiceName"];

    [aCoder encodeObject:_aBusinessServiceImageName forKey:@"cmbcBusinessServiceImageName"];

    

}



+(void)saveBusinessServicesMenuToUserDefault:(id)object

{

    NSData * dataobject = [NSKeyedArchiver archivedDataWithRootObject:object];

    NSUserDefaults *userDefault = [NSUserDefaults standardUserDefaults];

    [userDefault setObject:dataobject forKey:@"cmbcBusinessServiceMenu"];

    

}



+(id)getBusinessServicesMenuToUserDefault

{

    NSUserDefaults *userDefault = [NSUserDefaults standardUserDefaults];

    NSData * dataobject = [userDefault objectForKey:@"cmbcBusinessServiceMenu"];

    id object = [NSKeyedUnarchiver unarchiveObjectWithData:dataobject];

    return object;

}



+(void)BusinesseServicessSetString:(id)value forKey:(NSString *)defaultName

{

    NSUserDefaults *userDefault = [NSUserDefaults standardUserDefaults];

    [userDefault setValue:value forKey:defaultName];

}


+(NSString *)BusinesseServicessStringForkey:(NSString *)defaultName

{

    NSUserDefaults *userDefault = [NSUserDefaults standardUserDefaults];

    id value = [userDefault valueForKey:defaultName];

    return  (NSString*)value;

}



  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值