如何保存使用UIImagePickerController摄像头拍摄的照片以后在应用程序中显示?

我正在让用户使用UIImagePickerController拍摄照片,我需要将它保存到应用程序中,以便在稍后需要时可以显示它。 我怎样才能做到这一点?

我听说NSUserDefaults将是一个错误。 我需要保存的只是一张图片,从来没有更多。

这是将图像保存到文档文件夹的function

func saveImage (image: UIImage, path: String ) -> Bool{ let pngImageData = UIImagePNGRepresentation(image) //let jpgImageData = UIImageJPEGRepresentation(image, 1.0) // if you want to save as JPEG let result = pngImageData.writeToFile(path, atomically: true) return result } 

下面是使用图像名称获取文档目录path的function

 func fileInDocumentsDirectory(filename: String) -> String { let documentsFolderPath = NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory.DocumentDirectory, NSSearchPathDomainMask.UserDomainMask, true)[0] as! String return documentsFolderPath.stringByAppendingPathComponent(filename) } 

这是一个如何使用你的图像path的例子

 let imagePath = fileInDocumentsDirectory(myImageName) 

这里是如何将图像保存到该文件夹

 saveImage(image, path: imagePath) 

现在最后一部分是获得你的形象,所以使用这个function来获得你的形象

 func loadImageFromPath(path: String) -> UIImage? { let image = UIImage(contentsOfFile: path) if image == nil { println("Image not available at: (path)") } return image } 

这里是你如何使用上述function

 image = loadImageFromPath(imagePath) imageView.image = image 

希望这可以帮助你