Comment charger des images à partir de JSON dans UIImageView en utilisant SDWebImage?

J'essaie d'afficher des images à partir d'une URL JSON dans un UIImageView, similaire à Tinder, en utilisant SDWebImage. Chaque didacticiel que j'ai rencontré ne concerne que le téléchargement d'URL d'une seule image (@ "suchandsuch.png"), ou l'affichage des images dans les vues de table (ce que je ne veux pas faire).

Je ne sais pas ce que je fais mal.

Mon exemple de code: ViewController.m

-(void)viewDidLoad{ [super viewDidLoad]; AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager]; [manager GET:@"http://www.suchandsuch.com/api/sites" parameters:nil success:^(AFHTTPRequestOperation *operation, id responseObject) { self.posts = (NSDictionary *) responseObject; self.post = self.posts[@"sites"]; NSLog(@"JSON: %@", self.post); } failure:^(AFHTTPRequestOperation *operation, NSError *error) { NSLog(@"Error: %@", error); }]; NSData *data = [[NSData alloc] initWithContentsOfURL: [NSURL URLWithSsortingng:@"http://www.suchandsuch.com/api/sites"]]; NSError *error; NSDictionary *jsonDict = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:&error]; NSSsortingng *logoSsortingng = [jsonDict objectForKey:@"logoURL"]; NSURL *logoURL = [NSURL URLWithSsortingng:logoSsortingng]; [self.myImage setImageWithURL:logoURL]; } 

Je suppose que vous avez déjà ajouté les files SDWebImage à votre projet et que vous savez comment parsingr le JSON, voici tout ce que vous devez faire. Ajoutez cette ligne au début de votre class de controller de vue –

 #import "UIImageView+Webcache.h 

Après avoir analysé et récupéré l'object contient l'imageUrl dont vous avez besoin, par exemple le dictionary (dict) extrait du JSON

Exemple

  NSSsortingng *jsonImageUrlSsortingng = [dict objectForKey:@"imageUrl"]; NSURL *imageURL = [NSURL URLWithSsortingng:jsonImageUrlSsortingng]; [[SDImageCache sharedImageCache] removeImageForKey:imageURL fromDisk:YES]; [self.profileImageView setImageWithURL:imageURL]; 

J'espère que ça aide

MODIFIER les files SDWebImage que vous devriez déjà avoir dans votre projet

entrez la description de l'image ici

En supposant que vous avez une structure JSON qui a un dictionary de imageUrl. Vous devez convertir le JSON en NSObject via cet extrait de code.

 NSError *error; NSDictionary*jsonDictionary = [NSJSONSerialization JSONObjectWithData:jsonData options:kNilOptions error:&error]; NSSsortingng *imageUrl = [jsonDictionary objectForKey:@"imageURLKEY"]; [yourImageView sd_setImageWithURL:[NSURL URLWithSsortingng: imageUrl] placeholderImage:[UIImage imageNamed:@"anyTempImage.png"]];