Я пытаюсь преобразовать CKRecords, загруженные с cloudkit, обратно в исходную форму данных (в данном случае CLLocation). Я получаю сообщение об ошибке «Не удается преобразовать значение типа„CKRecord“ожидаемого типа аргумента" CLLocation», когда я пытаюсь вызвать функцию в строке 17.Пытается использовать исходную форму данных из CKRecord в Swift
func loadLocation(completion: (error:NSError?, records:[CKRecord]?) -> Void)
{
let query = CKQuery(recordType: "Location", predicate: NSPredicate(value: true))
CKContainer.defaultContainer().publicCloudDatabase.performQuery(query, inZoneWithID: nil){
(records, error) in
if error != nil {
print("error fetching locations: \(error)")
completion(error: error, records: nil)
} else {
print("found locations: \(records)")
completion(error: nil, records: records)
guard let records = records else {
return
}
for(var i = 0; i<records.count; i += 1)
{
addBoundry(records[i])
}
}
}
}
я получаю предупреждение «Cast от„CKRecord“к неродственному типу„“CLLocation всегда терпит неудачу» – Steve
@Caleb Проверьте мой отредактированный ответ – penatheboss