2010-08-29 3 views
0

je suis stocker une image dans une table sqlite sous forme de données BLOB et l'afficher en utilisant le code suivant:afficher une image de la table de sqlite

self.myImage.image = [[[UIImage alloc] initWithData: recipe.image ] autorelease];

J'utilise à la place le nom du fichier image dans les champs sqlite et stocke l'image sur le système de fichiers. quel serait le code pour l'afficher de cette façon? J'ai du mal à comprendre.

normalement pour afficher une image du système de fichiers que j'utiliserais: UIImage * image = [UIImage imageNamed: @ "something.png"]; Dans ce cas, je dois saisir la chaîne qui est dans le champ/l'attribut de la table.

merci d'avance.

Répondre

1

Vous pouvez charger UIImage avec un chemin de fichier absolu en suivant l'API.

+ (UIImage *)imageWithContentsOfFile:(NSString *)path; 

+ (UIImage *) imageNamed: nom (NSString *) cherchera une image de faisceau principal de l'application. En d'autres termes, il recherchera une image à partir des ressources.

editted:

Vous avez dit que vous avez enregistré l'image du système de fichiers. Donc, je pense que vous pouvez récupérer le chemin de fichier absolu de l'image à partir de la base de données sqlite, n'est-ce pas?

NSString *imgPath; 

/// get imgPath from sqlite database 
... 

/// get the image by filepath 
self.myImage.image = [UIImage imageWithContentOfFile:imgPath]; 

Et, ma question est de savoir comment stockez-vous l'image du système de fichiers.

+0

Le nom de l'image provient d'une table de base de données. donc si le nom de la table est 'recette', le champ s'appelle 'image' (recipe.image), comment cela pourrait-il correspondre à la ligne de code que vous avez affichée. c'est la syntaxe qui me déroute. merci – hanumanDev

+0

merci pour votre aide – hanumanDev

+0

c'était le code que j'ai fini par utiliser: CGRect myImageRect = CGRectMake (5.0f, 45.0f, 310.0f, 315.0f); UIImageView * myImage = [[UIImageView alloc] initWithFrame: myImageRect]; [myImage setImage: [UIImage imageNommé: recipe.image]]; myImage.opaque = YES; – hanumanDev

Questions connexes