Realm.io:持久化枚举类型

4

以下是要考虑的内容:

typedef NS_OPTIONS(NSUInteger, AssetClass)
{
    AssetClassFixed = 1,
    AssetClassPortable = 2
};

我该如何定义一个实体并使其拥有一个枚举类型的属性,以便能够持久化?

@interface MyEntity : RLMObject

@property AssetClass assetClass;

@end
1个回答

5

以下是预期的错误信息:

'无法使用不兼容的类型持久化属性' assetClass'。添加到ignoredPropertyNames:方法中以忽略。

Objective-C枚举的唯一原因无法工作是,因为枚举类型基于未支持的无符号类型,详情请参见此链接:not yet supported

如果将其更改为有符号类型,则应该可以在没有别名属性的情况下正常工作。

-typedef NS_OPTIONS(NSUInteger, AssetClass)
+typedef NS_OPTIONS(NSInteger, AssetClass)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接