UITableViewCell与NSFetchedResultsController

时间:2019-06-30 14:00:46

标签: uitableview nsfetchedresultscontroller

我对sectionNameKeyPath感到困惑,因为tableViewCell没有被fetchResultsController的sectionNameKeyPath分隔。 希望您的回答,谢谢。

核心数据表具有“ ctype”属性,用于存储“ 0”或“ 1” enter image description here

和UITableViewController是这样的:

func configureCell(_ cell: UITableViewCell, withCate catalog:Cate) {
    cell.textLabel!.text = catalog.emoji! + catalog.citem! + catalog.ctype.description  
}

override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCell(withIdentifier: "Cell", for: indexPath)
    let cataitem = fetchedResultsController.object(at: indexPath)
    configureCell(cell, withCate:cataitem)
    return cell
}

和fetchResultsController就像这样:

let aFetchedResultsController = NSFetchedResultsController(fetchRequest: fetchRequest, managedObjectContext: self.viewContext, sectionNameKeyPath: "ctype", cacheName: "Money")

,但FetchResultController的对象未按ctype分隔。  enter image description here

1 个答案:

答案 0 :(得分:0)

我知道了。 原因是我应该添加“ ctype” sortDescriptors作为第一个sortDescriptors