按记录名称获取多条记录

Nik*_*har -1 database ios swift cloudkit ckrecord

我有一组记录名称(或字符串)。我想获取公共数据库中具有任何这些记录名称的任何记录。我该怎么做?

Ado*_*lfo 5

你应该应用这样的东西......

let filter: [String] = [ "String1", "String2", "String3" ]

let predicate: NSPredicate = NSPredicate(format: "%k IN %@", "record_name", filter)
let query: CKQuery = CKQuery(recordType: "RecordType", predicate: predicate)

CKContainer.default.publicCloudDatabase.perform(query, inZoneWith: nil, completionHandler: { @escaping ([CKRecord]?, Error?) -> Void in 
    // Do what you want with your filtered CKRecords ;)
})
Run Code Online (Sandbox Code Playgroud)

NSPredicate使用所聚集的操作者IN由阵列中的内容,以过滤器。谓词编程指南中的更多信息