动态将图片从网址下载到UIImageVIew

辣味

我试图从URL插入图像到UIImageView中。我使用下面的代码来做到这一点。运行时,程序陷入

NSURL *url = [NSURL URLWithString:urlstring];

在下面的代码中,该行显示了“线程1:信号SIGABRT”。有人可以帮我解决这个问题,并告诉我使用的格式是否正确或我做错了什么吗?

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"newoffer";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
if (cell==nil)
{
    cell=[[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
NSDictionary *temp = [product objectAtIndex:indexPath.row];
UILabel *Label = (UILabel *)[cell viewWithTag:201];
Label.text = [temp objectForKey:@"item_name"];
UIImageView *Image = (UIImageView *)[cell viewWithTag:200];
NSString *urlstring=[temp objectForKey:@"image_url"];
NSURL *url = [NSURL URLWithString:urlstring];
NSData *data = [NSData dataWithContentsOfURL:url];
Image.image = [UIImage imageWithData:data];

return cell;

}
Nikos M.

更改此代码:

NSURL *url = [NSURL URLWithString:urlstring];
NSData *data = [NSData dataWithContentsOfURL:url];
Image.image = [UIImage imageWithData:data];

至:

 dispatch_queue_t myqueue = dispatch_queue_create("myqueue", NULL);

    // execute a task on that queue asynchronously
    dispatch_async(myqueue, ^{
NSURL *url = [NSURL URLWithString:[urlstring stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];;
NSData *data = [NSData dataWithContentsOfURL:url];
 dispatch_async(dispatch_get_main_queue(), ^{
Image.image = [UIImage imageWithData:data]; //UI updates should be done on the main thread
     });
    });

正如其他人所提到的,像SDWebImage这样的图像缓存库将有很大帮助,因为即使使用此实现,您也只需将下载过程推送到后台线程,这样UI不会卡住,但您不缓存任何内容。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将图片从网址加载到ImageView-C#

来自分类Dev

图片网址会下载图片而不是显示图片

来自分类Dev

根据网址将图片加载到div中

来自分类Dev

如何将图片从网址加载到小部件的android远程视图中

来自分类Dev

下载特定网址的flickr图片

来自分类Dev

可能是从网址将文件vdo下载到iPad?-实码

来自分类Dev

如何使用Phonegap Filetransfer将图片下载到iOS中的图片库

来自分类Dev

如何将刮擦图像下载到动态文件夹中?

来自分类Dev

动态将第三方托管的http图片网址转换为https网址

来自分类Dev

将图片从url下载到服务器以在ASP.NET 5 API中进行处理

来自分类Dev

将网址列表下载为scrapy,将其下载到文件名列表,并进行限速

来自分类Dev

通过在ionic框架中使用$ cordovaFileTransfer将Facebook个人资料图片下载到移动应用程序StorageDirectory

来自分类Dev

c#从ftp服务器直接将图像加载到图片框中,而无需下载

来自分类Dev

如何将多个图片下载到浏览器中

来自分类Dev

如何将图片上传到Firebase存储,然后返回下载网址?

来自分类Dev

我无法获取图片的下载网址

来自分类Dev

根据网址将图片加载到div中

来自分类Dev

阻止将图片下载到chrome网页中

来自分类Dev

如何将图片从网址加载到小部件的android远程视图中

来自分类Dev

下载特定网址的flickr图片

来自分类Dev

将图片从csv文件下载到基于其ID的文件夹

来自分类Dev

自动布局,将图片异步加载到uiimageview中(Swift,xCode6)

来自分类Dev

使用带有Access的Visual Studio 2012的Visual Basic!无法将图片网址加载到图片框中

来自分类Dev

尝试从图片网址下载图片,但获取HTML

来自分类Dev

从网址下载图片,日志错误

来自分类Dev

从Android中的网址下载图片

来自分类Dev

如何在未经许可的情况下将图片从 URL 下载到本地计算机?

来自分类Dev

如何将单个用户目录(下载、图片等)挂载到不同的硬盘驱动器

来自分类Dev

如何将多张图片上传到 Firebase 存储并返回多个下载网址

Related 相关文章

  1. 1

    将图片从网址加载到ImageView-C#

  2. 2

    图片网址会下载图片而不是显示图片

  3. 3

    根据网址将图片加载到div中

  4. 4

    如何将图片从网址加载到小部件的android远程视图中

  5. 5

    下载特定网址的flickr图片

  6. 6

    可能是从网址将文件vdo下载到iPad?-实码

  7. 7

    如何使用Phonegap Filetransfer将图片下载到iOS中的图片库

  8. 8

    如何将刮擦图像下载到动态文件夹中?

  9. 9

    动态将第三方托管的http图片网址转换为https网址

  10. 10

    将图片从url下载到服务器以在ASP.NET 5 API中进行处理

  11. 11

    将网址列表下载为scrapy,将其下载到文件名列表,并进行限速

  12. 12

    通过在ionic框架中使用$ cordovaFileTransfer将Facebook个人资料图片下载到移动应用程序StorageDirectory

  13. 13

    c#从ftp服务器直接将图像加载到图片框中,而无需下载

  14. 14

    如何将多个图片下载到浏览器中

  15. 15

    如何将图片上传到Firebase存储,然后返回下载网址?

  16. 16

    我无法获取图片的下载网址

  17. 17

    根据网址将图片加载到div中

  18. 18

    阻止将图片下载到chrome网页中

  19. 19

    如何将图片从网址加载到小部件的android远程视图中

  20. 20

    下载特定网址的flickr图片

  21. 21

    将图片从csv文件下载到基于其ID的文件夹

  22. 22

    自动布局,将图片异步加载到uiimageview中(Swift,xCode6)

  23. 23

    使用带有Access的Visual Studio 2012的Visual Basic!无法将图片网址加载到图片框中

  24. 24

    尝试从图片网址下载图片,但获取HTML

  25. 25

    从网址下载图片,日志错误

  26. 26

    从Android中的网址下载图片

  27. 27

    如何在未经许可的情况下将图片从 URL 下载到本地计算机?

  28. 28

    如何将单个用户目录(下载、图片等)挂载到不同的硬盘驱动器

  29. 29

    如何将多张图片上传到 Firebase 存储并返回多个下载网址

热门标签

归档