【问题标题】:iOS Core Data images not actually being deletediOS Core Data 图像实际上并未被删除
【发布时间】:2017-03-01 00:50:46
【问题描述】:

我有一个应用程序使用表格视图将图像从相机保存到 Core Data。当我滑动删除时,一切看起来都很好。将图像加载到应用程序后,我在管理存储的设备设置中看到应用程序大小增加,因为它应该会增加。但是当我滑动删除时,应用程序大小永远不会减小,即使我将它们全部删除。有没有人有过类似的经历。

【问题讨论】:

  • 检查您是否真的删除并保存了核心数据的上下文。如果您不这样做,它将不会被删除
  • @Vinodh 这就是我在删除函数 context.delete(objects_here) appDelegate.saveContext() 中添加的内容

标签: ios iphone core-data swift3


【解决方案1】:

您可能会从CoreData 中删除条目,但不会从文档目录中删除实际资源。

您可以使用文件管理器的removeItem方法将文件从应用程序文档目录中删除,然后检查大小是否有任何变化。

【讨论】:

  • 检查后,Core Data 没有将图像或任何内容保存在文档目录中。
  • 那么你可能正在写图像。你能分享你的代码吗?
  • func tableView(_ tableView: UITableView, commit editingStyle: UITableViewCellEditingStyle, forRowAt indexPath: IndexPath) { if (editingStyle == UITableViewCellEditingStyle.delete) { var objs = controller.fetchedObjects let object = (objs?[ indexPath.row]) // print(object!) DatabaseController.getContext().delete(object!) DatabaseController.saveContext() } tableView.reloadData() } 是否有更好的方法在这里发布代码
  • @user2103669 您可以编辑您的问题并将代码放在那里。但在这里你只是从 coredata 中删除我猜的对象。
猜你喜欢
  • 2011-02-25
  • 2014-09-06
  • 2018-08-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-09-28
相关资源
最近更新 更多