给定以下条件:
typedef NS_OPTIONS(NSUInteger, AssetClass)
{
AssetClassFixed = 1,
AssetClassPortable = 2
};
如何定义一个将使用枚举类型的属性保持自身的实体?
@interface MyEntity : RLMObject
@property AssetClass assetClass;
@end
这将失败,原因是:
"无法持久化类型不兼容的属性"assetClass"。"。添加到ignoredPropertyNames:要忽略的方法。'
对于Objective-C枚举,它不起作用的唯一原因是,因为枚举类型基于尚未支持的无符号类型。
如果要将其更改为签名类型,则应在没有别名属性的情况下工作。
-typedef NS_OPTIONS(NSUInteger, AssetClass)
+typedef NS_OPTIONS(NSInteger, AssetClass)