情况如下: 当我从API获取数据时,我使用JsonModel将json转换为模型,它非常好。
我必须为某些数据执行持久存储,我最终选择NSKeyedArchive和NSKeyedUnarchive来保存和获取数据。 现在来了,JsonModel已经符合NSCoding,所以我不需要编写代码来应用NSCoding。我存档和取消归档一些基本数据,它运作良好。
但是在数据模型中有一个UIImage属性,当我归档数据模型时,问题就出现了,归档文件没有完成。 (似乎JsonModel不支持UIImage编码???)
当它退出时,代码来到
@throw [NSException exceptionWithName:@"Value transformer not found"
reason:[NSString stringWithFormat:@"[JSONValueTransformer %@] not found", selectorName]
userInfo:nil];
所以任何人都知道我该怎么办才能解决这个问题?
非常感谢!
答案 0 :(得分:1)
您正确 - JSONModel不支持(de)UIImage
个实例的序列化。您应该实现自定义数据转换器(JSONValueTransformer
),as shown in the readme:
@implementation JSONValueTransformer (CustomTransformer)
- (UIImage *)UIImageFromNSString:(NSString *)string {
return nil; // transformed object
}
- (NSString *)JSONObjectFromUIImage:(UIImage *)image {
return nil; // transformed object
}
@end