gpt4 book ai didi

ios - 在调度中将图像加载到 UIImageView 不起作用

转载 作者:行者123 更新时间:2023-11-29 10:55:40 25 4
gpt4 key购买 nike

我正在使用 UICollectionView,我需要将图像加载到集合单元中。

这是代码

dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0ul);
dispatch_async(queue, ^{
NSURL *imageURL = [NSURL URLWithString:post.cover_img_url];
NSData *data = [NSData dataWithContentsOfURL:imageURL];
UIImage *image = [UIImage imageWithData:data];
dispatch_async(dispatch_get_main_queue(), ^{
[cell.cover_img setImage:image];
});
});


post.cover_img_url = the_url_for_the_image;
cell.cover_img = the_UIImageView_object;

当我设置的图片不是来自网络时,效果很好。

但是当我从网络上尝试时,UIImageView 是空白而不是图像。

有人有什么想法吗?

最佳答案

您的代码看起来应该可以正常工作,但您需要测试几项内容。首先,您需要检查以确保 imageURL 既非零,又准确指向您认为它指向的位置。如果需要,将日志结果复制粘贴到桌面浏览器。

NSLog(@"%@",imageURL);

其次,如果获取图像失败,您需要能够检测到这一点。我建议,如果您继续使用 dataWithContentsOfURL: 路由,您至少使用以下内容来检查错误:

NSError *error = NULL;
NSData *data = [NSData dataWithContentsOfURL:imageURL options:NSDataReadingMappedIfSafe error:&error];

if (error) {
// ...
}

关于ios - 在调度中将图像加载到 UIImageView 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18534677/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com