gpt4 book ai didi

ios - 使用 NSFetchedResultsController 排序时在多个部分中的一个对象

转载 作者:可可西里 更新时间:2023-11-01 01:56:55 25 4
gpt4 key购买 nike

我刚开始使用 Core Data 和 NSFetchedResultsController,但有点卡住了。我有一个 Book 实体,它有一个 String 类型的类别属性。数据被加载到一个 Collection View 中,并根据该类别按部分分组。这样一切都很好,但问题是一本书应该能够出现在多个类别(和 Collection View 部分)中。我可以将类别的类型更改为字符串数组,但我该如何进行排序?

let request = Book.fetchedRequest() as NSFetchRequest<Book>
let categorySort = NSSortDescriptor(key: #keyPath(Book.category)), ascending:true)
request.sortDescriptors = [categorySort]

do {
fetchedResultsController = NSFetchedResultsController(fetchRequest: request, managedObjectContext: context, sectionNameKeyPath: #keyPath(Book.category)), cacheName: nil)
try fetchedResultsController.performFetch()
} catch let error as NSError {
print(“Could not fetch. \(error), \(error.userInfo)”)
}

我应该放弃使用 NSFetchedResultsController 还是有可能让它工作?

最佳答案

... a Book should be able to appear in multiple categories (and collection view sections).

Should I just give up on using NSFetchedResultsController or is it possible to make this work?

使用获取的结果 Controller 无法实现您所描述的内容。NSFetchedResultsController 获取所有获取的对象(可能是由谓词过滤),根据排序描述符对它们进行排序,以及根据 sectionNameKeyPath 参数对它们进行分组。

fetched results controller 不可能提供相同的对象多次(在相同或不同的部分)。

关于ios - 使用 NSFetchedResultsController 排序时在多个部分中的一个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51924921/

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