NSString *pictureUrl = [[[oneUserDict objectForKey:@"picture"]objectForKey:@"data"]objectForKey:@"url"];
[[AppEngine sharedEngine]imageAtURL:[NSURL URLWithString:pictureUrl] onCompletion:^(UIImage *fetchedImage, NSURL *url, BOOL isInCache)
{
int index = [usersArray indexOfObject:oneUserDict];
NSString *loadName = [NSString stringWithFormat:@"%d of %d",index,[usersArray count]];
NSLog(@"%i",usersArray.count);
int temp=[usersArray count]-10;
if (index!=temp)
{
[[LoadingIndicator currentIndicator]displayActivity:loadName];
NSLog(@"inside loading indicator");
}
else
{
[[LoadingIndicator currentIndicator]displayCompleted:@"Done"];
NSLog(@"finally done");
}
aPerson.image = UIImagePNGRepresentation(fetchedImage);
[appDelegate.managedObjectContext save:nil];
}];
AppEngine是MKNetworkEngine
的子类,它使用名为imageAtURL:onCompletion:
的方法
我目前正在做的是从特定网址中检索所有图像并将它们存储在aPerson.image中,基本上上面的代码是在FOR循环中(即用户数)。
问题
上面的代码在完成块中永远不会被执行,我不知道为什么但是我在块中放了一个断点,但编译器仍然不会在完成块内运行语句。
答案 0 :(得分:1)
Api imageAtURL:onCompletion:
已被弃用。请改用imageAtURL:completionHandler:errorHandler:
。此外,MKNetworkKit提供UIImageView+MKNetworkKitAdditions
类别,为setImageFromURL: placeHolderImage:
干杯!
阿玛尔。