从服务器加载超过10,000行的UITableView的正确方法是什么?

时间:2016-02-18 22:56:12

标签: ios uitableview cocoa-touch lazy-loading

我在服务器上有10,000多个项目。什么是将这些项填充到UITableView及其单元格中的正确延迟加载代码模式?每个自定义单元格将包含多条信息,如标题,价格,描述,图像等。

问题:

  1. 我应该在下载任何其他数据之前调用服务器获取完整的项目数,这样我可以使UITableView大小合适吗?

  2. 我是否应该在后台单独加载每个人作为对服务器的调用?或者我应该将它们装入20或50块或者其他任何东西,以便我不必经常点击服务器?

  3. 我知道如何使用图像来完成这个...我只是使用SDWebImage库而且效果很好。是否有一个简单的库或方法来处理文本?

  4. 在下载后,这些数据最好用于存储/释放内存中的数据? (也许来自问题#3的库会照顾我的内存管理,比如SDWebImage吗?)

1 个答案:

答案 0 :(得分:1)

这是一个非常复杂的问题,但我会研究无限滚动。

编辑:idk如何清楚地制作清单,所以没有格式......

  1. 基本上加载x金额,并在向下滚动时继续加载该金额。如果您最终加载的金额低于x金额,那么这意味着您已经加载了最后一批数据。

    1. 你绝对不应该一次加载1个。这是最糟糕的想法。负载然而许多看似正确。对于Feed来说,您可能想要加载前30个帖子,然后在向下滚动足够远的时候再加载30个帖子等。

    2. 图片和文字不同。只需批量加载您的文本。如果有需要的图像,请从数据中获取图像的网址,然后使用SDWebImage获取图像。

    3. UITableView将为您解决此问题。