【问题标题】:archive UIImage with JsonModel使用 JsonModel 归档 UIImage
【发布时间】:2015-10-28 12:33:47
【问题描述】:

情况如下: 我从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];

所以任何人都知道我应该怎么做才能解决这个问题?

先谢谢了!

【问题讨论】:

    标签: ios uiimage nscoding nskeyedarchiver jsonmodel


    【解决方案1】:

    你是对的 - JSONModel 不支持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
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-03-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多