【发布时间】:2016-03-25 13:30:48
【问题描述】:
我目前将图像直接存储在核心数据中,但在检索高质量图像时遇到了问题。
我被建议将图像存储在文档目录中并在 core-data 中保存一个路径,以便不将实际图像存储在那里,而只是我可以去哪里找到它的地址。
有人能把我推向正确的方向吗?似乎找不到合适的指导?
【问题讨论】:
我目前将图像直接存储在核心数据中,但在检索高质量图像时遇到了问题。
我被建议将图像存储在文档目录中并在 core-data 中保存一个路径,以便不将实际图像存储在那里,而只是我可以去哪里找到它的地址。
有人能把我推向正确的方向吗?似乎找不到合适的指导?
【问题讨论】:
我能够在这个 youtube 视频中找到我所有问题的答案 - https://www.youtube.com/watch?v=6vk4UrJR8WM
这是 github,其中包含有关如何完成此操作的说明的文件 - https://github.com/TDAbboud/WeightLogger-Images
【讨论】:
试试 Hanake 缓存:https://github.com/Haneke/Haneke 对于同样的问题,它对我个人来说非常有效。它使有时很痛苦的任务变得非常容易。
【讨论】:
在 Document 目录中保存图像很容易,此代码未优化只是为了给你一个提示(你应该管理错误,可选等)。假设您已经有一个名为image 的有效UIImage 实例和一个名为imageName 的有效图像名称String
let data = UIImagePNGRepresentation(image)
// Unwrapping the data optional
if let data = data {
let paths = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true)
let path = (paths.first! as! NSString).stringByAppendingPathComponent(imageName)
data.writeToFile(path, options: [])
//Save the path into your managed object
}
【讨论】: