所以我有代码在前台更改tableView的单元格图像(在后台下载图像后):
dispatch_queue_t background = dispatch_get_global_queue (DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);
dispatch_async(background, ^{
UIImage *image = [UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://whatever.jpg"]]];
dispatch_queue_t foreground = dispatch_get_main_queue();
dispatch_async(foreground, ^{
cell.imageView.image = image;
});
});
现在我知道代码可以正常工作,因为当我离开表视图并返回时,它将加载。如果我在设置imageView的同时将cell.textLabel.text设置为某种值,它也将起作用(自动加载),但是由于某些原因,仅尝试使用块更改单元格图像是行不通的。
如果他们不在限制范围内,也可以使用,但是由于延迟,我不想这样做。
感谢所有帮助:)
最佳答案
尝试添加[cell.imageView setNeedsLayout:YES]
,除了我看不到您的代码将如何工作之外,我在其中一个应用程序中使用了完全相同的代码,并且运行正常。
关于ios - 更改后Cell.imageView.image不会自动加载,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23408466/