gpt4 book ai didi

ios - NSFetchedResultsController创建objc_exception_throw时崩溃

转载 作者:行者123 更新时间:2023-12-01 18:52:35 26 4
gpt4 key购买 nike

创建NSFetchedResultsController时,我收到 objc_exception_throw 。我对iOS编程比较陌生,因此仍然无法调试iOS崩溃。

let appDelegate = UIApplication.sharedApplication().delegate as! AppDelegate
lazy var parentContext: NSManagedObjectContext? = {
if let managedObjectContext = self.appDelegate.managedObjectContext {
return managedObjectContext
}
else {
return nil
}
}()

lazy var fetchedResultsController: NSFetchedResultsController = {
let request = NSFetchRequest()
let entity = NSEntityDescription.entityForName("GameDate", inManagedObjectContext: self.parentContext!)
request.entity = entity
let frc = NSFetchedResultsController(fetchRequest: request, managedObjectContext: self.parentContext!, sectionNameKeyPath: nil, cacheName: nil)
frc.delegate = self
return frc
}()

override func viewDidLoad() {
super.viewDidLoad()
performFetchFromDb()
setupTableView()
}

我在这行崩溃:
let frc = NSFetchedResultsController(fetchRequest: request, managedObjectContext: self.parentContext!, sectionNameKeyPath: nil, cacheName: nil)
这次崩溃与我的情况有关吗?

最佳答案

我的提取请求中缺少NSSortDescriptor。这修复了它:

lazy var fetchedResultsController: NSFetchedResultsController = {
let request = NSFetchRequest()

let entity = NSEntityDescription.entityForName("GameDate", inManagedObjectContext: self.parentContext!)
request.entity = entity

let gameTimeSort = NSSortDescriptor(key: "gameTime", ascending: false)
request.sortDescriptors = [gameTimeSort]

let frc = NSFetchedResultsController(fetchRequest: request, managedObjectContext: self.parentContext!, sectionNameKeyPath: nil, cacheName: nil)
frc.delegate = self
return frc
}()

关于ios - NSFetchedResultsController创建objc_exception_throw时崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30042167/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com