我试图将一个获取请求的结果放入数组中。我的代码:iOS核心数据:将获取请求的结果转换为数组
let appDelegate = UIApplication.sharedApplication().delegate as! AppDelegate
let managedContext = appDelegate.managedObjectContext
let fetchRequest = NSFetchRequest(entityName: "CLIENTS")
var mobClients = [NSManagedObject]()
var arrayAllPhoneNumbers = [String]()
do {
let results = try managedContext.executeFetchRequest(fetchRequest)
mobClients = results as! [NSManagedObject]
for clientPhoneNumber in mobClients {
let myClientPhoneNumber = clientPhoneNumber.valueForKey("clientsMobilePhoneNumber") as! String
print(myClientPhoneNumber)
//The numbers print out just fine, one below the other
//
//Now the results need to go into the array I've declared above ---> arrayAllPhoneNumbers
messageVC.recipients = arrayAllPhoneNumbers // Optionally add some tel numbers
}
} catch
let error as NSError {
print("Could not fetch \(error), \(error.userInfo)")
}
如图所示,所有电话号码都需要在数组中捕获。我如何实现这一目标?
创建表示核心数据实体的NSManagedObject子类可以更好地服务您。此外,如果您只需要电话号码,则应在初始提取中使用谓词,然后可以直接将结果数组分配给电话号码。 –
对于像我这样的n00b,这是很多(压倒性的)信息!给我一两天谷歌所有的,如果你不介意,我想回到你这个。同时感谢您的回应! –