【问题标题】:Need advice on speeding up tableViewCell photo loading performance需要有关加快 tableViewCell 照片加载性能的建议
【发布时间】:2010-04-29 06:24:49
【问题描述】:

我有大约 20 个表格视图单元格,每个单元格都包含一个数字 (2-5) 缩略图大小的图片(它们是非常小的 Facebook 个人资料图片,例如http://profile.ak.fbcdn.net/hprofile-ak-sf2p/hs254.snc3/23133_201668_2989_q.jpg)。每张图片都是一个 UIImageView 添加到单元格的 contentview 中。

滚动性能差,测量绘制时间发现UIImage渲染是瓶颈。

我已经研究/想到了一些解决方案,但由于我是 iphone 开发新手,我不确定要采用哪种策略:

  • 预加载所有图像并检索 它们从磁盘而不是 URL 时 绘制单元格(我不确定单元格是否 绘图仍然会很慢,所以我想要 推迟时间投资 在这里)
  • 让单元格显示占位符 图片来自磁盘,而图片是 异步加载(这似乎 是最好的解决方案,但我 目前不确定该怎么做 最好这样做)
  • 有快速绘图 Tweetie的推荐,但我 不知道会有多大影响 如果事实证明我的开销是在网络加载中 (http://blog.atebits.com/2008/12/fast-scrolling-in-tweetie-with-uitableview/)

想法/实施建议?谢谢!

【问题讨论】:

    标签: iphone uitableview


    【解决方案1】:

    建议您在 XCode 帮助文档中搜索 LazyTableImages。这是 Apple 提供的一个示例应用程序,可将图像异步加载到表格单元格中。这应该是一个很好的起点。

    您可能希望添加一个本地缓存来保存图像,这样您就不必每次都继续下载它们,以及一种从缓存中删除旧图像的方法。

    【讨论】:

    • 太完美了,感谢您为我指明正确的方向,Ramin!缓存目前可能不是那么大的问题——我预计用户不会在这个主屏幕上花费太多时间(可能只滚动一次或两次)并且它具有静态内容(目前)。不过将来肯定需要缓存。
    猜你喜欢
    • 1970-01-01
    • 2015-07-18
    • 2017-06-18
    • 2015-02-02
    • 1970-01-01
    • 2021-10-23
    • 2023-04-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多