加载图像需要时间

时间:2013-02-27 09:47:25

标签: ios ios5 ios6 ios4 ios-simulator

我正在将图像从互联网加载到我的TableView单元格。

但是将它加载到TableView需要时间。

我的一位朋友建议使用线程,但我不知道它在iOS和目标C中是如何工作的。

有谁能告诉我如何使用线程或类似线程的概念来加速这个过程?

4 个答案:

答案 0 :(得分:2)

执行本教程:http://www.raywenderlich.com/4295/multithreading-and-grand-central-dispatch-on-ios-for-beginners-tutorial

将回答您的问题以及您可以了解线程和Grand Central Dispatch(GCD)。

与您相同的情况。

答案 1 :(得分:2)

我认为你需要使用https://github.com/nicklockwood/AsyncImageView。 此实用程序可帮助您异步加载图像。

同时查看演示样本。

答案 2 :(得分:1)

使用懒惰图像下载技术。这将确保首先显示可用内容,然后随着时间的推移缓慢提取不可用数据!!但是如果您的单元格可重复使用,请小心,然后将在那里显示旧图像。所以我会推荐一个占位符图像,直到原始图像准备好显示。

lazy image loading

答案 3 :(得分:1)

问题

这里的问题是图像大小很大,因此下载需要更多时间,因此在主线程中运行会导致UI性能受阻。

<强>解决方案

实际上解决方案是异步下载图像(在一个单独的线程中),以便在主线程中运行的UI不会被阻止

有一些好的图书馆可以为你完成这项任务。只需投入并享受

  1. AsynchImageView
  2. SDWebimageview
  3. AFNetworking imageview的类扩展(如果你使用AF,这是一个不错的选择)