如何将图像从相机/照片库保存到要在UICollectionView中显示的数组中

时间:2016-08-20 01:00:27

标签: ios arrays swift uiimage uicollectionview

我意识到这个问题可能有点宽泛,但基本上我想做的就是使用图像选择器通过相机或照片库选择照片,并将照片保存到数组中。我已经知道如何使用assets文件夹中的图像填充集合视图。真的是如何将用户图像保存到数组。如何命名每张图片?

此外,最好是阵列可以是全局阵列,以便可以在其他地方访问这些图像。

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

为什么不简单使用:

Expected "an unexpected string" to contain "expected string"

编辑:

将图像保存到磁盘:

var myImages = [UIImage]()

func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject]) {
    if let yourPickedImage = info[UIImagePickerControllerOriginalImage] as? UIImage {
       myImages.append(yourPickedImage)
    }
   dismissViewControllerAnimated(true, completion: nil)
}

如何存储

func saveImage (image: UIImage, path: String ) -> Bool{
    let jpgImageData = UIImageJPEGRepresentation(image, 1.0)
    let result = jpgImageData!.writeToFile(path, atomically: true) 
    return result
}

func getDocumentsURL() -> NSURL {
    let documentsURL = NSFileManager.defaultManager().URLsForDirectory(.DocumentDirectory, inDomains: .UserDomainMask)[0]
    return documentsURL
}

func fileInDocumentsDirectory(filename: String) -> String 
    let fileURL = getDocumentsURL().URLByAppendingPathComponent(filename)
    return fileURL.path!
}

let imagePath = fileInDocumentsDirectory(myImageName)
saveImage(yourPickedImage, path: imagePath)