Chargement d'une photo à partir d'un fichier en local
Bonjour,
Je n'arrive pas à charger une photo dans une image view.
La photo se trouve dans un dossier de l'ordinateur. J'ai déjà eu à le faire plein de fois et cela fonctionnait, la différence était que l'image se trouvait dans le dossier de l'application, mais je ne vois pas pourquoi il y aurait un problème dans ce cas.
Voici mon code :
let fileUrl = NSURL(fileURLWithPath: "Users/helio/Documents/Photos/IMG0001.jpeg")
let imageData:NSData = NSData(contentsOf: fileUrl as URL)!
let image = NSImage(data: imageData as Data)
self.imageView.image = image
Cela plante au niveau de la ligne NSData.
Merci de votre aide.
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
C'est à dire ? NSData retourne nil ?
Est-ce que ce ne serait pas un problème de Sandboxing ?
En plus, pour accéder à Documents, il est préférable de ne pas coder l'URL en dur, mais de passer par :
Je venais de trouver le problème et c'est bien comme tu l'indiques, un problème de Sandboxing !
Je vais adapter le code comme tu me le conseilles.
Merci.
Pour compléter tu peux tester si le fichier existe avant de l'ouvrir
Petite remarque :
Si tu utilises un Swift assez récent, préfères utiliser les versions sans
NS
si possible:Data
vsNSData
,URL
vsNSURL
, cela t'évitera lesas
que tu fais par exemple.