大佬教程收集整理的这篇文章主要介绍了使用NSFetchedResultsController对描述符进行排序 – Swift,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
当我设置按类别排序时,我得到以下运行时错误:
[_TtCSs23_ContiguousArrayStorage00007F80513B59D0 key]: unrecognized SELEctor sent to instance 0x7f80513b5720
这是我的NSFetchedResultsController:
var sectionNameKeyPathString1: String? var sectionNameKeyPathString2: String? var fetchedResultsController: NSFetchedResultsController { if _fetchedResultsController != nil { return _fetchedResultsController! } let fetchrequest = NSFetchrequest() // Edit the entity name as appropriate. let entity = NSEntityDescription.entityForName("LOCATIOn",inManagedObjectContext: self.managedObjectContext!) fetchrequest.entity = entity // Set the batch size to a suitable number. fetchrequest.fetchBatchSize = 20 // Edit the sort key as appropriate. if sectionNameKeyPathString1 != nil { let sortDescriptor1 = NSSortDescriptor(key: sectionNameKeyPathString1!,ascending: truE) let sortDescriptor2 = NSSortDescriptor(key: sectionNameKeyPathString2!,ascending: truE) let sortDescriptors = [sortDescriptor1,sortDescriptor2] fetchrequest.sortDescriptors = [sortDescriptors] } else { let sortDescriptor = NSSortDescriptor(key: "LOCATIOnName",ascending: truE) fetchrequest.sortDescriptors = [sortDescriptor] } var sectionNameKeyPath: String if sectionNameKeyPathString1 == nil { sectionNameKeyPath = "firstLetterAsCap" } else { sectionNameKeyPath = sectionNameKeyPathString1! } // Edit the section name key path and cache name if appropriate. // nil for section name key path means "no sections". let aFetchedResultsController = NSFetchedResultsController(fetchrequest: fetchrequest,managedObjectContext: self.managedObjectContext!,sectionNameKeyPath: sectionNameKeyPath,cachename: "LOCATIOns") aFetchedResultsController.delegate = self _fetchedResultsController = aFetchedResultsController var error: NSError? = nil if !_fetchedResultsController!.performFetch(&error) { // TODO: Handle this error // replace this implementation with code to handle the error appropriately. // abort() causes the application to generate a crash log and terminate. You should not use this function in a shipping application,although it may be useful during development. //println("Unresolved error \(error),\(error.userInfo)") abort() } return _fetchedResultsController! }
使用断点我很有信心,例如,sectionNameKeyPathString1 =“category1”和sectionNameKeyPathString2 =“LOCATIOnName”以及sectionNameKeyPath =“category1”,因此键路径与第一个排序描述符匹配.
以上是大佬教程为你收集整理的使用NSFetchedResultsController对描述符进行排序 – Swift全部内容,希望文章能够帮你解决使用NSFetchedResultsController对描述符进行排序 – Swift所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。