如何让RLMResults变得可变?

yon*_* ho 5 iphone realm ios

Realm doc说这RLMResults是舔NSArray.我有一些从数据库返回的结果,我想将它合并到另一个RLMResults.但似乎它是不可变的,如何RLMResults从另一个添加对象RLMResults?还是让它变得可变?或将其转换为NSArray

yos*_*osh 3

目前,这是您必须手动执行的操作。您可以通过连接两个结果来创建 RLMArray。

不过,我们正在针对相同类型的 RLMObjects 的路线图进一步讨论联合/合并方法。

您可以分享的任何内容都将帮助我们了解用例并可能影响 API 设计

只要它们是同一类型,这里是一个通用示例

let currentTask = Task.objectsWhere("name = %@", "First task").firstObject() as Task
let currentRecords = currentTask.records
let arrayOfRecords = RLMArray(objectClassName: "Record")

arrayOfRecords.addObjects(currentRecords)

let futureTask = Task.objectsWhere("name = %@", "Future task").firstObject() as Task
let futureRecords = futureTask.records

arrayOfRecords.addObjects(futureRecords)
Run Code Online (Sandbox Code Playgroud)