我的应用允许用户从照片库中选择徽标并将其保存到文档目录中,如下所示:
var fileName:String = "logo.png"
var arrayPaths = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true)[0] as NSString
var pngFileName = arrayPaths.stringByAppendingPathComponent(fileName)
UIImagePNGRepresentation(pickedImage).writeToFile(pngFileName, atomically:true)
NSUserDefaults.standardUserDefaults().setObject(fileName, forKey: "pngFileName")
NSUserDefaults.standardUserDefaults().synchronize()
我想在另一个viewcontroller中使用该图像,但我无法弄清楚如何从用户默认值访问图像,然后在当前的viewcontroller中使用。
答案 0 :(得分:4)
您将文件名存储在用户默认值中,您可以通常的方式找到应用程序文档目录 - 将两者结合起来并拥有您的URL。这样,您就可以显示图像。
let path = NSSearchPathForDirectoriesInDomains(
.DocumentDirectory, .UserDomainMask, true)[0] as NSString
let fileName = NSUserDefaults.standardUserDefaults()
.stringForKey("pngFileName") ?? defaultName
let imagePath = path.stringByAppendingPathComponent(fileName)!
let image = UIImage(contentsOfFile: imagePath )
// display the image
someImageView.image = image