我有一个使用 NSData 类型的“图像”属性定义的领域类。我已将 +defaultPropertyValues 方法的 NSDictionary 返回值中“图像”的默认值设置为
@"image":[NSNull null]
. 这表示没有设置图像值。
但是,保存 Realm 对象时程序会崩溃,并出现以下错误:
[NSNull UTF8String]: unrecognized selector sent to instance 0x10abe9ce0
您能否告知 Realm 对象中的 NSData 属性是否允许 nil 值。如果是这样,是否有不同的方式来表示空的 NSData 属性。
设置非零 NSData 值时,该问题不存在。
先感谢您
更新:代码:
Item.h
@interface UploadImage : RLMObject
@property uploadImage:NSData
@end
Item.m
+ (NSDictionary *)defaultPropertyValues
{
return @{@"uploadImage":[NSNull null]...};
}
当 uploadImage 设置为 nil 或从 NSDictionary 获取默认值时会发生错误。我使用的解决方法是使用创建一个 0 字节的 NSData["" dataUsingEncoding:NSUTF8StringEncoding]