优化iPhone中大数据量列表的加载

这几天在研究如何优化大数据列表的显示,在网上找到这篇文章。文章写于2009年,可能有点老了,但还是有些借鉴意义,所以把它翻了过来,与大家一起分享。可惜的是作者没有提供相应的原代码




在这篇文章中,我们将看到一个iPhone中从服务器加载数据的UITableView及当数据量从1到成千上万行时UITableView的表现。我将测试当显示数据集从很小到很大时哪种方法表现良好,而哪种方法表现拙劣。


上周,我收到一封邮件,问我StreamToMe在一个中间集合中是否可以处理20,000个文件。这位仁兄可能是问“20,000个文件分类进子目录中”,但是我立即想到将20,000个文件放到一个单独目录中是一个更有趣的问题。

我们在iPhone应用程序中可以很容易的发现当table只处理几百行数据时,程序会变得很慢,响应迟钝。在我的经历中,我很少去测试在一个UITableView旋转几百行数据。我不知道当有20,000行数据时,UITableView会怎么样。

单纯从数据量上看,它应该能正常工作:128MB的iPhone版本(所有早于3Gs的版本)允许应用程序使用24MB-64MB的内存,直到被系统强制关闭。这就允许每一行的数据使用1-3kB的内存—事实上,我不需要这么多。

当然,这并不是有效的综合测试。下面这个程序将进行实际的测试,真实的数据、服务器交互、解析、构造和显示,在所有的东西加载进内存后还必须能回放音频。



http://www.cocoachina.com/newbie/basic/2011/1213/3713.html

posted @ 2015-12-24 09:47  Bo-tree  阅读(150)  评论(0)    收藏  举报