Fotoğraf Kitaplığı'ndan bir kullanıcının görüntü seçmesini sağlamaya çalışıyorum. Bu yüzden, UIImagePickerController
'u seçiyorum. Ama burada başlangıç URL'sini dosya sisteminde almayla ilgili bir sorun geliyor (CKAsset
için buna ihtiyacım var).UIImage öğesinin URL'sini alma UIImagePickerController
Kodum.
func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [NSObject : AnyObject]) {
let imageURL = info[UIImagePickerControllerReferenceURL] as NSURL
let path = imageURL.path!
let imageName = path.lastPathComponent
let paths = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true)
let documentDirectory = paths.first as String!
let localPath = documentDirectory + "/" + imageName
let imageData = NSData(contentsOfFile: localPath)!
let image = UIImage(data: imageData)!
picker.dismissViewControllerAnimated(true, completion: nil)
}
imageURL tür gizlenmiştir. Öğe URL'sini tanımlar, ancak Dosya Sisteminde bir değil. Ve benziyor: assets-library://asset/asset.JPG?id=B6C0A21C-07C3-493D-8B44-3BA4C9981C25&ext=JPG
.
Bu mantığa göre yolasset.JPG
görüntünün bir isimdir /asset.JPG
olduğunu. Sonra
benim Belgeler klasörünü girip buradan yola sahip bir dosyayı bulmaya çalışıyorum:
/Users/Eugene/Library/Geliştirici/CoreSimulator/Cihazlar/3C5E9A23-8220-4B37-BD14-F1E42EEC2C7C /data/Containers/Data/Application/20EBAAE2-6C6F-4651-A48F-16A222CCB3A2/Documents/asset.JPG
Cryptic yanı fakat mevcut değil görüntü için gerçek bir yol gibi görünüyor ... resim yok bu yolla bulunabilir. Ve bu beni hasta ediyor.
Görüntüyü en baştan kaydetmem gerekiyor mu? Yoksa başka yolu var mı?
AssetsLibrary API'sini kullanarak birkaç eğitici inceledim ancak sorunumu çözmek için yararlı bir şey bulamadım. Şimdiden teşekkür ederim!
Lütfen yanıtınızı Swift 2 için güncelleyebilir misiniz? Teşekkür ederim! Swift 3'te çalışmayan –
kodunu derleme yapmak için dönüştürdüm, ancak döndürülen yol Swift 3 için seçilen görüntüyü – zumzum
işaret etmiyor, bu çözümü kontrol edin: http://stackoverflow.com/questions/4957972/iphone-uiimagepickercontroller -save-görüntü-app-klasör/43456006 # 43456006 – XueYu