假设我的应用程序下载了一个图像,是否可以通过编程方式将其保存到Images.xcassets,以便不必再次下载图像?或者最好的选择是继续从服务器检索它?
您无法保存到Images.xcassets,但是可以将其保存到文件中并使用进行访问imageWithContentsOfFile:。
您还可以使用缓存库,例如JGAFImageCache或Haneke。
您无法将其保存到 images.assets。但是,您可以将其保存到文档目录购买这样做。(来自此处的代码 -如何将代码目标 c 转换为 Swift 以保存图像?)
let nsDocumentDirectory = NSSearchPathDirectory.DocumentDirectory
let nsUserDomainMask = NSSearchPathDomainMask.UserDomainMask
if let paths = NSSearchPathForDirectoriesInDomains(nsDocumentDirectory, nsUserDomainMask, true) {
if paths.count > 0 {
if let dirPath = paths[0] as? String {
let readPath = dirPath.stringByAppendingPathComponent("Image.png")
let image = UIImage(named: readPath)
let writePath = dirPath.stringByAppendingPathComponent("Image2.png")
UIImagePNGRepresentation(image).writeToFile(writePath, atomically: true)
}
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4997 次 |
| 最近记录: |