【发布时间】:2017-01-09 09:07:53
【问题描述】:
我有这段代码如下图
func getItemsOnList(){
let app = UIApplication.shared.delegate as! AppDelegate
let context = app.persistentContainer.viewContext
//fetchRequest to get the List
let fetchRequest = NSFetchRequest<NSFetchRequestResult>(entityName: "List")
let predicate = NSPredicate(format: "title == %@", listName)
fetchRequest.returnsObjectsAsFaults = false
fetchRequest.predicate = predicate
if let fetchResults = try? context.fetch(fetchRequest){
if fetchResults.count > 0 {
for listEntity in fetchResults {
let list = listEntity as! List
print(list.title as Any)
itemsOnListSet = list.contains!
它的作用是使用两个实体之间的 .contains 关系从指定的列表中获取项目,并将所有项目保存到 NSSet 中。
我想做的是用 NSSet 中的对象填充 TableView。
是否有与 NSSet 相关的函数允许我从集合中获取项目?或者我应该将项目保存在数组而不是 NSSet 中。
附: .contains 关系的类型是 NSSet
@NSManaged public var contains: NSSet?
【问题讨论】:
-
NSSet 是没有索引的数组,不能作为数据源tableview使用,一般用于搜索/过滤,不能包含重复项
标签: ios uitableview core-data