在提交中点击删除后,表视图没有升级?

时间:2015-07-28 18:28:58

标签: ios swift core-data commit

我的表格视图分为两部分: 完成任务和完成任务。

当我点击删除时,我希望在完成的任务中执行任务,反之亦然。

这是我的viewDidAppear:

 override func viewDidAppear(animated: Bool) {
    super.viewDidAppear(animated)
}

这是我的承诺:

 func tableView(tableView: UITableView, commitEditingStyle editingStyle: UITableViewCellEditingStyle, forRowAtIndexPath indexPath: NSIndexPath) {

    let thisTask = fetchedResultsController.objectAtIndexPath(indexPath) as! TaskModel

    if indexPath.section == 0 {
        thisTask.completed = true
    }
    else {
        thisTask.completed = false
    }
    (UIApplication.sharedApplication().delegate as! AppDelegate).saveContext()
}

这是controllerDidChange:

 func controllerDidChangeContent(controller: NSFetchedResultsController) {
    tableView.reloadData()
}

2 个答案:

答案 0 :(得分:1)

检查是否设置了tableView的dataSource和delegate属性。除此之外你可以试试这个:

func controllerWillChangeContent(controller: NSFetchResultsController) {
    tableView.beginUpdates();
}

func controllererDidChangeContent(controller: NSFetchResultsController) {
    tableView.endUpdates();
}

答案 1 :(得分:1)

尝试

self.viewWillAppear(false)