在 iOS 中查询 CloudKit 的数据范围

Querying a range of data with CloudKit in iOS

我是 CloudKit 和 swift 的新手。我有一个查询可以成功提取我的所有记录并按 creationDate(如下)对它们进行排序。但是,我希望能够通过 creationDate 提取前 10 条记录。然后有一个按钮来加载下一个 10 等等。我一直在做一些搜索,但一无所获。任何帮助将不胜感激!

        stream = [CKRecord]()
        let publicData = CKContainer.default().publicCloudDatabase
        let query = CKQuery(recordType: "myRecords", predicate: NSPredicate(format: "TRUEPREDICATE", argumentArray: nil))
        query.sortDescriptors = [NSSortDescriptor(key: "creationDate", ascending: false)]
        publicData.perform(query, inZoneWith: nil) { (results:[CKRecord]?, error:Error?) -> Void in
        if let stream = results {
            self.stream = stream
            DispatchQueue.global(qos: .background).async {
                DispatchQueue.main.async {
                    for record in stream {
//                        Do stuff here
                        }
                    }
                }
            }
        }
    }

CKQuery 有 属性 resultsLimit.

您可以指定要返回的记录数。

编辑:

Apple documentation