【问题标题】:Loading the image is taking time加载图像需要时间
【发布时间】:2013-02-13 01:40:35
【问题描述】:

我正在将图片从 Internet 加载到我的 TableView 单元格中。

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

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

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

【问题讨论】:

标签: ios ios5 ios6 ios4 ios-simulator


【解决方案1】:

做这个教程:http://www.raywenderlich.com/4295/multithreading-and-grand-central-dispatch-on-ios-for-beginners-tutorial

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

和你一样的场景。

【讨论】:

    【解决方案2】:

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

    lazy image loading

    【讨论】:

      【解决方案3】:

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

      也可以查看演示示例。

      【讨论】:

        【解决方案4】:

        问题

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

        解决方案

        其实解决方法是异步下载图片(在单独的线程中),这样在主线程中运行的 UI 就不会被阻塞

        有一些很好的图书馆可以为你完成这项任务。只要进去享受一下

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

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2019-03-01
          • 1970-01-01
          • 1970-01-01
          • 2013-11-30
          • 1970-01-01
          • 2012-10-26
          • 2017-05-01
          • 2019-06-17
          相关资源
          最近更新 更多