我在URLImage
单元格中展示了tableview
的集合。当我滚动单元格时它被卡住了。我使用了SDWebImageManager
和AFNetWorking
等第三方。电池一直被卡住了。
[imageVw setImageWithURL:[NSURL URLWithString:self.imgaeRecord.PreviewURl]placeholderImage:[UIImage imageNamed:@"default-thumbnail.jpg"]];
或
NSURL *url =[NSURL URLWithString:[self.MoviesListImage objectAtIndex:indexPath.row]];
SDWebImageManager *manager = [SDWebImageManager sharedManager];
[manager downloadImageWithURL:url
options:0
progress:^(NSInteger receivedSize, NSInteger expectedSize) {
// progression tracking code
}
completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType, BOOL finished, NSURL *imageURL) {
if (image) {
cell.recipeImageView.image = image;
}
}];
答案 0 :(得分:1)
尝试在${codeship_build_status////\\/} # escape
# or
s%{{CODESHIP_CODE}}%$codeship_build_status%g #
方法
cellForRowAtIndexPath
答案 1 :(得分:1)
在你的cellForRowAtIndexPath
中NSURL *url =[NSURL URLWithString:[self.MoviesListImage objectAtIndex:indexPath.row]];
SDWebImageManager *manager = [SDWebImageManager sharedManager];
[manager downloadImageWithURL:url
options:0
progress:^(NSInteger receivedSize, NSInteger expectedSize) {
// progression tracking code
}
completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType, BOOL finished, NSURL *imageURL) {
if (image) {
dispatch_async(dispatch_get_main_queue(), ^{
TableViewCellClass *updateCell = (id)[tableView cellForRowAtIndexPath:indexPath];
if (updateCell)
updateCell.yourImageView.image = image;
});
}
}
}];
[task resume];
答案 2 :(得分:1)
我认为当你必须做很多图像请求操作时,你的问题仍然存在于tableview的性能上。因此,为了优化请求,您应该取消当单元格离开tableview的可见区域时所做的请求。要实现这一点,请在自定义单元格实现- (void)prepareForReuse
方法中,假设您使用的是SDWebImage,请执行[imageView sd_cancelCurrentImageLoad]
。此外,要下载图像并将图像分配给ImageView
,您只需要
[cell.imageView sd_setImageWithURL:url placeholderImage:[UIImage imageNamed:@"placeholder.png"]]