我正在查询带有objectsWhere的RLMArray,我得到一个RLMResults,但我需要一个RLMArray,结果是我的代码中的这一点.
private var data: RLMArray?
self.data = self.currentSubcategory!.datasheets // is a RLMArray
self.data = self.data!.objectsWhere("is_favourite = 1")
Run Code Online (Sandbox Code Playgroud)
Vi *_*huk 12
RLMArray已被分为两类:RLMArray和RLMResults.RLMArray现在仅用于RLMObject类的多个属性 ,而RLMResults用于所有查询和排序方法.这样做是为了反映两者实际上具有相当不同的API(例如,RLMResults没有addObject:),并且当我们为查询添加更改通知时,它们预计会进一步分化.此迁移应尽可能更换简单
RLMArray用RLMResults在所有的编译器抱怨的地方.为了配合这一点,
arraySortedByProperty:ascending:已更名为sortedResultsUsingProperty:ascending:,并addObjectsFromArray:已更名为addObjects:反映事实,你可以通过任何枚举对象给它(如NSArray,RLMArray或RLMResults).
资料来源:http://realm.io/news/realm-cocoa-0.87.0/#rlmresults
希望这就够了
你需要从对象添加RLMResult到RLMArray...
@implementation RLMResults (RLMArrayConversion)
- (RLMArray *)toArray {
RLMArray * array = [[RLMArray alloc] initWithObjectClassName:self.objectClassName];
[array addObjects:self];
return array;
}
@end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8845 次 |
| 最近记录: |