主 - 细节视图控制器和CoreData

时间:2015-04-09 23:00:36

标签: swift

作为swift的新手,我正在尝试使用Master View Controller,在那里我使用JSON阅读博客并将其存储在核心数据中。一切都很好,除了我不明白如何在右键滑动和删除时从核心数据中删除数据。我很抱歉提出这样的问题,说实话,这很令人尴尬。我肯定知道以下代码删除它但我无法找到它的实现,也不知道它是如何知道删除数据的实体。

 func controller(controller: NSFetchedResultsController, didChangeObject anObject: AnyObject, atIndexPath indexPath: NSIndexPath?, forChangeType type: NSFetchedResultsChangeType, newIndexPath: NSIndexPath?) {
        switch type {
            case .Insert:
                tableView.insertRowsAtIndexPaths([newIndexPath!], withRowAnimation: .Fade)
            case .Delete:
                *tableView.deleteRowsAtIndexPaths([indexPath!], withRowAnimation: .Fade)*
            case .Update:
                self.configureCell(tableView.cellForRowAtIndexPath(indexPath!)!, atIndexPath: indexPath!)
            case .Move:
                tableView.deleteRowsAtIndexPaths([indexPath!], withRowAnimation: .Fade)
                tableView.insertRowsAtIndexPaths([newIndexPath!], withRowAnimation: .Fade)
            default:
                return
        }
    }

请帮助我了解它是如何工作的。 在此先感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

该代码中没有任何内容可以删除Core Data中的任何内容。该代码调用UITableView上的方法。它有时会告诉表视图从屏幕上删除一行,但它对Core Data没有影响。

您使用NSManagedObjectContext'从核心数据中删除数据deleteObject:方法。