在iOS中如果想保存自定义对象,要让自定义对象实现NSCoding接口并实现方法-(id)initWithCoder:(NSCoder *)coder-(void)encodeWithCoder:(NSCoder *)coder;

@interface RegUserInfo : NSObject <NSCoding>   
@property (nonatomic, strong) NSString *siteName;
@end  
@@implementation RegUserInfo
-(void) encodeWithCoder:(NSCoder *)encoder  {  
    [encoder encodeObject:siteName forKey:@"siteName"];  
} 
-(id) initWithCoder:(NSCoder *)decoder {  
    siteName = [decoder decodeObjectForKey:@"siteName"];    
    return self;  
}  
//两个方法中的key必须一致
@end

如果项目中使用了mjextention,可以直接在.m文件中调用MJCodingImplementation


@interface MarkerUniformConfig : NSObject<NSCoding>//需要继承NSCoding
@property(nonatomic,strong)NSString* icon_id;
@end


@implementation MarkerUniformConfig
MJCodingImplementation//这里会自动完成属性序列化过程
@end

相关文章:

  • 2022-12-23
  • 2022-03-03
  • 2022-12-23
  • 2022-01-08
  • 2022-02-09
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-06-24
  • 2021-08-10
  • 2021-12-22
  • 2022-12-23
相关资源
相似解决方案