Ios 下载图像制作并在下载后更新表视图
我正在开发一个图像下载应用程序。图像大小不同。我想在下载图像时下载图像异步并更新表视图。还需要按时间间隔清除缓存Ios 下载图像制作并在下载后更新表视图,ios,asynchronous,Ios,Asynchronous,我正在开发一个图像下载应用程序。图像大小不同。我想在下载图像时下载图像异步并更新表视图。还需要按时间间隔清除缓存 请建议我如何实施。我看过SDwebimagecache,但它在图像下载时崩溃。我希望它能帮助您。我与我的所有(ARC)项目一起使用 使用: 添加viewcontroller:#导入“UIImageView+WebCache.h” 您需要将MapKit和ImageIO添加到项目中。如果你没有添加 为此: 单击Xcode中项目导航器顶部的项目 选择“构建阶段”选项卡 打开“将二进制文件与
请建议我如何实施。我看过SDwebimagecache,但它在图像下载时崩溃。我希望它能帮助您。我与我的所有(ARC)项目一起使用 使用: 添加viewcontroller:
#导入“UIImageView+WebCache.h”
您需要将MapKit和ImageIO添加到项目中。如果你没有添加
为此:
单击Xcode中项目导航器顶部的项目
选择“构建阶段”选项卡
打开“将二进制文件与库链接”框
单击“+”
添加MapKit和ImageIO框架。我使用了核心数据和AFNetworking来实现同样的功能,请参见下面的代码
UserBasicInfo* userBasicInfo = [[UserBasicInfo findByAttribute:@"userId" withValue:@(chatUser)] objectAtIndex:0];;
if (userBasicInfo.userImage == nil) {
__weak LGMessageBoxCell *weakCell = cell;
[cell.userImage setImageWithURLRequest:[[NSURLRequest alloc] initWithURL:[NSURL URLWithString:userBasicInfo.imageUrl]]
placeholderImage:[UIImage imageNamed:@"facebook-no-user.png"]
success:^(NSURLRequest *request, NSHTTPURLResponse *response, UIImage *image){
weakCell.userImage.image = image;
[weakCell setNeedsLayout];
[MagicalRecord saveWithBlock:^(NSManagedObjectContext *localContext) {
UserBasicInfo* userBasicInfo = [[UserBasicInfo findByAttribute:@"userId" withValue:@(chatUser) inContext:localContext] objectAtIndex:0];
userBasicInfo.userImage = UIImagePNGRepresentation(image);
} completion:^(BOOL success, NSError *error) {
NSLog(@"%@",[error localizedDescription]);
}];
}
failure:^(NSURLRequest *request, NSHTTPURLResponse *response, NSError *error){
}];
} else {
cell.userImage.image = [UIImage imageWithData:userBasicInfo.userImage];
}
试试这个
UserBasicInfo* userBasicInfo = [[UserBasicInfo findByAttribute:@"userId" withValue:@(chatUser)] objectAtIndex:0];;
if (userBasicInfo.userImage == nil) {
__weak LGMessageBoxCell *weakCell = cell;
[cell.userImage setImageWithURLRequest:[[NSURLRequest alloc] initWithURL:[NSURL URLWithString:userBasicInfo.imageUrl]]
placeholderImage:[UIImage imageNamed:@"facebook-no-user.png"]
success:^(NSURLRequest *request, NSHTTPURLResponse *response, UIImage *image){
weakCell.userImage.image = image;
[weakCell setNeedsLayout];
[MagicalRecord saveWithBlock:^(NSManagedObjectContext *localContext) {
UserBasicInfo* userBasicInfo = [[UserBasicInfo findByAttribute:@"userId" withValue:@(chatUser) inContext:localContext] objectAtIndex:0];
userBasicInfo.userImage = UIImagePNGRepresentation(image);
} completion:^(BOOL success, NSError *error) {
NSLog(@"%@",[error localizedDescription]);
}];
}
failure:^(NSURLRequest *request, NSHTTPURLResponse *response, NSError *error){
}];
} else {
cell.userImage.image = [UIImage imageWithData:userBasicInfo.userImage];
}