Iphone 在UIScrollview(从服务器下载)上显示缩略图的最佳方法是什么

Iphone 在UIScrollview(从服务器下载)上显示缩略图的最佳方法是什么,iphone,objective-c,xcode,ios,ios4,Iphone,Objective C,Xcode,Ios,Ios4,我想在UIScrollview(如照片应用程序)上显示一些图像(缩略图)。 所有图像都将从服务器下载。据我所知,要展示,几乎没有其他选择: 1) 通过创建UIImageView,然后将它们作为子视图添加到主滚动视图上 2) 通过对UIView类进行子类化,然后在其上绘制图像 3) 使用CATiledLayer类 我想,当加载大量图像时,第一种方法不够好,因为它不是最好的方法;第三个备选方案更适合大图像。因为我只会得到很小的图像,所以第二个备选方案在我的情况下似乎是最好的 请建议,我应该选择哪个选

我想在UIScrollview(如照片应用程序)上显示一些图像(缩略图)。 所有图像都将从服务器下载。据我所知,要展示,几乎没有其他选择:

1) 通过创建UIImageView,然后将它们作为子视图添加到主滚动视图上 2) 通过对UIView类进行子类化,然后在其上绘制图像 3) 使用CATiledLayer类

我想,当加载大量图像时,第一种方法不够好,因为它不是最好的方法;第三个备选方案更适合大图像。因为我只会得到很小的图像,所以第二个备选方案在我的情况下似乎是最好的

请建议,我应该选择哪个选项。如果可行,请提供示例代码

非常感谢:)

您所说的“[UIImageView]不够好,因为它没有优化”是什么意思?你真的认为
UIImageView
在显示图像方面没有得到优化吗


我的建议是:选择最简单的解决方案,看看它是否适合您的需要。

我发布了一个专门针对这个问题的免费库:HJCache。我们已经在许多应用程序中使用了它,包括我们的Facebook应用程序Focus for Facebook。它异步下载、缓存文件、在屏幕上重复时共享图像(例如,来自具有相同配置文件缩略图的同一个人的帖子),在用户滚动浏览大型图像表时自动管理以正确顺序下载正确的图像集,并且易于使用,具有“提前加载下一幅图像”设计,可用于全屏照片浏览


我可能错了,但我想是的,因为可能会从服务器上获取任意数量的图像。假设获取了100个图像,我想创建100个UIImageView并添加它们不是一个好主意。我认为直接在视图上绘制图像是个好主意。请建议..最好的解决方案并不总是最好的解决方案。我在考虑速度和记忆力。谢谢:)这看起来很令人印象深刻。干得好。谢谢我将进一步探索您的代码。(快速提问:是使用图像视图显示图像,还是直接在表格单元格上绘制图像?)。在一个应用程序中,我们使用包含UIImageView的UIView。在另一个较老的应用程序中,我们希望在第一代iphone上平滑滚动,手机设计包括图像的圆角以及叠加在渐变背景上的图形和文本。这是使用图形上下文的自定义drawInRect代码完成的(这要快得多)。对于较新的应用程序,我们不必费心这么做,因为大多数用户都在3GS和iPhone4上,而且它们的速度足够快,可以滚动复杂的视图布局。