Obtenir l'URL de UIImage de UIImagePickerController
Je vais essayer d'obtenir l'URL d'une image importée à partir de la Bibliothèque de Swift pour l'envoyer à Apple Watch avec transferFile(_:metadata)
mais je vais avoir deux erreur sur NSURL
.
C'est mon code:
func imagePickerController(picker: UIImagePickerController, didFinishPickingImage image: UIImage!, editingInfo: [NSObject : AnyObject]!)
{
imagePicked.image = image
let imageUrl = editingInfo[UIImagePickerControllerReferenceURL] as! NSURL
let imageName = imageUrl.path!.lastPathComponent
let documentDirectory = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true).first as String!
let localPath = documentDirectory.stringByAppendingPathComponent(imageName)
let image = editingInfo[UIImagePickerControllerOriginalImage]as! UIImage
let data = UIImagePNGRepresentation(image)
data!.writeToFile(localPath, atomically: true)
let photoURL = NSURL(fileURLWithPath: localPath)
self.dismissViewControllerAnimated(true, completion: nil);
}
Et j'obtiens une erreur avec *imageName et *localPath car il est dit que:
'lastPathComponent' n'est pas disponible: Utilisation lastPathComponent sur NSURL à la place.
'stringByAppendingPathComponent' n'est pas disponible: Utilisation URLByAppendingPathComponent sur NSURL à la place.
Mais je ne peux pas l'obtenir à droite dans Swift 2.0 et Xcode 7. Où vais-je tort?
Les messages d'erreur sont de vous dire quoi faire. Et il y a de nombreux exemples sur.
J'ai essayé de changer les valeurs de NSURL dans le code, mais ça ne marche pas quand le test de l'application.
J'ai essayé de changer les valeurs de NSURL dans le code, mais ça ne marche pas quand le test de l'application.
OriginalL'auteur Francesco | 2015-10-12
Vous devez vous connecter pour publier un commentaire.
Apple a changé quelque chose dans leur
NSString
etNSURL
bibliothèque dans leur dernière version (iOS 9), mais ces méthodes sont disponibles à partir de l'iOS 4. Vous pouvez vérifier que le Apple Post Sur Le Forum pour plus de détails.Pour corriger cette erreur, vous devez modifier le code comme:
Swift 2:
Swift 3:
Référence:
Vous êtes les bienvenus. Amusez-vous bien !!!
pas de travail. Swift 3, iOS 10
J'ai mis à jour ma réponse rapide 3. Merci pour votre commentaire
Quelle est l'erreur que vous obtenez ?
OriginalL'auteur Midhun MP
Que de iOS 11, vous pouvez obtenir l'URL de l'image à partir de l'info dictionnaire avec la clé UIImagePickerControllerImageURL.
OriginalL'auteur Allanah Douglas
OriginalL'auteur DHuang