所以我有代码在前台更改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/

10-14 22:02