【发布时间】:2017-06-28 16:48:55
【问题描述】:
我确实看过所有关于标题的答案,但它们都是用 Objetive-C 编写的,你知道 Swift 中的那个吗??
这是我的代码:
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
let respuesta = self.funcCoreData.obtenerResultados(entidad: "Clientes", orden: "nombre_comercial", ascendente: true)
self.objeto = respuesta[0] as! NSFetchRequest<NSManagedObject>
self.resultados = respuesta[1] as! NSFetchedResultsController<NSManagedObject>
do {
try self.resultados.performFetch()
if self.funcCoreData.objetoLleno(objeto: self.objeto) {
self.pintarSecciones()
}
} catch {
print("???????????????? \(error)")
}
}
文件 funcCoreData.swift
func obtenerResultados(entidad: String, orden: String, ascendente: Bool) -> [AnyObject] {
let appDelegate = UIApplication.shared.delegate as? AppDelegate
let context = appDelegate?.persistentContainer.viewContext
let objeto = recorrerObjeto(entidad: entidad, orden: orden, ascendente: ascendente)
let recorrerResultados = NSFetchedResultsController<NSManagedObject>(fetchRequest: objeto, managedObjectContext: context!, sectionNameKeyPath: "seccionLetra", cacheName: nil)
var array = [AnyObject]()
array.append(objeto)
array.append(recorrerResultados)
return array
}
func recorrerObjeto(entidad: String, orden: String, ascendente: Bool) -> NSFetchRequest<NSManagedObject> {
let objeto = NSFetchRequest<NSManagedObject>(entityName: entidad)
let ordenacion = NSSortDescriptor(key: orden, ascending: ascendente, selector: #selector(NSString.caseInsensitiveCompare))
objeto.sortDescriptors = [ordenacion]
return objeto
}
我得发个帖子,比如DispatchQueue.global(qos: .background).async 但是,我不知道在哪里!
【问题讨论】:
-
不,它没有... >.
-
嘿,我在一家公司工作,所以我不应该分享我所有的代码,但是我明天会编辑这篇文章,你可能会看到我的问题。谢谢!
-
什么?但你会帮忙还是不帮忙? @SwiftDeveloper xd
标签: swift multithreading core-data