Ceci est une question angoissante recrue, mais ici j'apprends un nouveau langage et cadre, et j'essaie de répondre à la question "Qu'est-ce que la vérité?" en ce qui concerne Obj-C. J'essaye de charger paresseux les images à travers le réseau. J'ai une classe de données appelée événement qui a des propriétés dont:Objective-C Définition
@property (nonatomic, retain) UIImage image;
@property (nonatomic, retain) UIImage thumbnail;
dans mon AppDelegate, je vais chercher un tas de données sur mes événements (ce qui est une application qui affiche des listes d'événements d'arts locaux), et pré-ensembles chaque événement.image à mon "no-image.png" par défaut.
Ensuite, dans le UITableViewController où je vois ces choses, je fais:
if (thisEvent.image == NULL) {
NSLog(@"Going for this item's image");
UIImage *tempImage = [UIImage imageWithData:[NSData dataWithContentsOfURL:
[NSURL URLWithString:
[NSString stringWithFormat:
@"http://www.mysite.com/content_elements/%@_image_1.jpg",
thisEvent.guid]]]];
thisEvent.image = tempImage;
}
On n'a jamais cet appel NSLog. Test thisEvent.image pour NULLness n'est pas la chose. J'ai essayé aussi == nil
, mais cela ne fonctionne pas non plus.
Oh mec. Vous parlez de le faire correctement dans ma classe de modèle d'événement, non? C'est tellement mieux que de le faire dans le contrôleur de table vu que je construis la cellule pour contenir l'objet. Merci! –