2017-02-20 114 views
-3

我有一個記錄名稱(或字符串)的數組。我想在公共數據庫中獲取具有任何這些記錄名稱的任何記錄。我該怎麼做?通過記錄名稱獲取多條記錄

+5

某種形式的代碼大概是?你有沒有嘗試寫一些? –

回答

2

您應該應用這樣的事情...

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 ;) 
}) 

NSPredicate使用聚合操作IN,以便通過一個數組的內容進行過濾。更多信息在Predicate Programming Guide