Ios TableCell ImageView设置URL为SDWebImage的图像:仅调整第一行的大小
在我的方法中,我有以下代码 它在第一个表行记录上工作得很好,但是剩余的单元格没有调整大小 但是,当我开始滚动时,它们会滚动。我似乎不明白为什么。还有什么我需要做的吗Ios TableCell ImageView设置URL为SDWebImage的图像:仅调整第一行的大小,ios,uitableview,uiimageview,sdwebimage,Ios,Uitableview,Uiimageview,Sdwebimage,在我的方法中,我有以下代码 它在第一个表行记录上工作得很好,但是剩余的单元格没有调整大小 但是,当我开始滚动时,它们会滚动。我似乎不明白为什么。还有什么我需要做的吗 [cell.imageView sd_setImageWithURL:url placeholderImage: [UIImage imageNamed:@"default.png"] completed:^(UIImage *image, NSE
[cell.imageView sd_setImageWithURL:url
placeholderImage: [UIImage imageNamed:@"default.png"]
completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType, NSURL *imageURL) {
if (image) {
NSLog(@"%@", account);
CGSize itemSize = CGSizeMake(32, 32);
UIGraphicsBeginImageContext(itemSize);
CGRect imageRect = CGRectMake(0.0, 0.0, itemSize.width, itemSize.height);
[image drawInRect:imageRect];
cell.imageView.image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
cell.imageView.layer.cornerRadius = 16;
cell.imageView.clipsToBounds = YES;
}
}];
我也有同样的问题。
SDWebImage的完整块不会在UI线程上运行,因此UI更新不会显示在屏幕上
在完成块中添加以下内容为我解决了这个问题:
dispatch_async(dispatch_get_main_queue(), ^{
[cell setNeedsLayout];
});
例如,有必要向ui线程发送重新部署单元格的请求