|
|
1
1
答案是多种因素的结合。不要同时将所有图像加载到内存中。将它们作为文件保存到文档或缓存目录中,为cellForRowAtIndexPath中的每个单元格加载它们,并在用户将其滚动到屏幕外时丢弃内存中的图像。 此外,不要将大图像作为缩略图加载。相反,当您下载它时,立即生成目标显示大小的缩略图版本并保存( 以及 原始版本(如果需要)。)然后,您可以加载并显示缩略图,对内存的影响要小得多。由于您正在为特定设备生成缩略图,因此只能生成所需的缩略图大小(视网膜或非视网膜,大小适合当前设备上的屏幕。{iPad/4“手机、5”手机、iPhone 6、6+等}) |
|
|
2
0
您应该有一个正确配置的内存缓存(例如,NSCache),用于存储根据显示大小调整大小的图像,这对内存和 drawing performance 。这是 a tutorial 关于如何配置NSCache以存储图像。这正是 DFImageManager 做
|