Sqlite 存储自定义对象,sqlite存储自定义
在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
本站文章为和通数据库网友分享或者投稿,欢迎任何形式的转载,但请务必注明出处.
同时文章内容如有侵犯了您的权益,请联系QQ:970679559,我们会在尽快处理。