如何在没有内存警告的情况下在UITableview中加载大量数据?

时间:2013-04-23 13:04:31

标签: ios uitableview uiscrollview

我正在尝试创建一个可以显示大量数据的自定义视图,类似于UITableView能够显示多行数据的方式。现在我在UIScrollView中显示数据,但在我重新加载数据几次后,我的应用程序开始收到内存警告。

设计自定义视图以显示大量数据的正确方法是什么,以及如何避免这些内存警告?

2 个答案:

答案 0 :(得分:2)

它没有。 UITableView只能加载尽可能多的行,因为它可以放在屏幕上。当需要更多行时,它会向数据源询问它们。这给出了表包含所有数据的外观,而没有一次复制所有内容的所有开销。

答案 1 :(得分:0)

如果您的tableView单元格太重,则意味着它有imageView,并且多个文本标签可以通过继承UITableView来更好地创建自定义单元格。

确保在自定义单元格中,子视图应仅添加一次并重复用于单元格。只需要发送imageview图像或标签文本。即使你在tableview中有这么多单元格,性能也会很好。

并且还要确保如果从服务器加载图像,则每次为单元格设置图像时都不会获取图像。使用图像缓存。

以下链接可能对将数据从服务器加载到表视图非常有用。

http://www.raywenderlich.com/4295/multithreading-and-grand-central-dispatch-on-ios-for-beginners-tutorial