首页 > 解决方案 > 在 iOS 中使用 CloudKit 查询一系列数据

问题描述

我是 CloudKit 的新手,而且很快。我有一个查询成功地提取了我的所有记录并按 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
                        }
                    }
                }
            }
        }
    }

标签: ioscloudkitswift5

解决方案


CKQuery有财产resultsLimit

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

编辑:

苹果文档


推荐阅读