web-dev-qa-db-fra.com

NSData et UIImage

J'essaie de charger UIImage objet à partir de NSData, et l'exemple de code était à NSImage, je suppose qu'ils devraient être les mêmes. Mais juste en train de charger l'image, je me demande quelle est la meilleure solution pour résoudre le problème de UIImage loading NSData.

60
BlueDolphin

UIImage a un -initWithData: méthode. D'après la documentation: "Les données du paramètre de données doivent être formatées pour correspondre au format de fichier de l'un des types d'images pris en charge par le système."

44
Noah Witherspoon

Je n'ai pas essayé UIImageJPEGRepresentation() auparavant, mais UIImagePNGRepresentation fonctionne bien pour moi, et la conversion entre NSData et UIImage est très simple:

NSData *imageData = UIImagePNGRepresentation(image);
UIImage *image=[UIImage imageWithData:imageData];
106
b123400

Essayez ceci pour convertir une image en NSdata:

UIImage *img = [UIImage imageNamed:@"image.png"];
NSData *data1 = UIImagePNGRepresentation(img);
21
user810340

theData doit être un objet NSData qui contient déjà les données. Vous devez effectuer le chargement/téléchargement du fichier sur l'objet NSData avant de l'utiliser. Vous pouvez l'inspecter en utilisant NSLog sur theData et voir s'il contient les données valides.

3
leonho