я сохранять изображения из пользователя библиотеки фотографий, как этотПочему мои изображения, сохраненные в каталоге, не отображаются после установки новой сборки?
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)
И я читал эти образы, как этот
func loadImageFromPath(path: String) -> UIImage? {
let image = UIImage(contentsOfFile: path)
return image
}
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
let cell = collectionView.dequeueReusableCell(withReuseIdentifier: reuseIdentifier, for: indexPath) as! Cell
cell.backgroundImage.image = loadImageFromPath(String(Globals.imagesArray[(indexPath as NSIndexPath).item]))
Это все работает отлично, пока я не установить новую сборку в Xcode 8, изображения делают не загружайте в UIImageView.
У меня возникло ощущение, что путь к файлу меняется, потому что изображения загружаются, если я ухожу и перезапустите приложение, но не из новой сборки.
Как исправить это?
Благодаря
Привет , спасибо за помощь. Я устанавливаю файл imagePath = fileindocumentsdirectory (myimagename) в loadimagefrompath()? – Khoury
Подумайте о своем 'Globals.imagesArray'. Он содержит полный _paths_. Вместо этого сделайте то, что вы сделали, когда вы первоначально сохранили файл. Поместите только файл изображения _name_ в 'Globals.imagesArray', и когда придет время для загрузки, _calculate_ полный URL/путь так же, как и при сохранении. – matt
Спасибо, что сделал трюк отлично! – Khoury