使用图像iphone管理超过1000行的uitableview

时间:2011-07-22 11:18:11

标签: iphone image-processing memory-leaks uitableview

我有一个超过1000行的表视图。每个细胞都有一个大约2-3 mb的大图像。我收到了低内存警告。所以任何人都可以建议我如何管理这个表视图。从Web服务器加载图像并在本地保存。所以请建议我应该遵循哪种方法。

索引路径中行的单元格代码:

savedFile =  [NSString stringWithFormat:@"%@/%@", appDeligate.ThumbNailPath, fileName];


            if ([clsGlobal isFileExist:savedFile]) {
                objCellRecent.imgView.image =[UIImage imageWithContentsOfFile:savedFile];

            }

谢谢

2 个答案:

答案 0 :(得分:1)

您无法将每张2-3 mb的1000张图像加载到设备上。你可以做的是一次保持50行的堆栈并覆盖这个堆栈中的图像。 这个堆栈应该是屏幕上当前存在的行,并且它们周围的行表示你一次显示10行,然后你保持那些10和40左右,例如20 up和20 down。 让我知道,如果这很好,因为我自己没有尝试过。

答案 1 :(得分:1)

我看到它的两个步骤。

  1. 制作缩略图 没有必要(即使它应该是可能的,但事实并非如此),在像iphone这样的小屏幕上,在1000r的表格中显示2-3mb大小的图像。相反,一旦按下或输入详细视图,就可以检索2-3mb图像。

  2. 一次只能检索有限数量的缩略图 从开始加载1000个缩略图中的一小部分,可能大约40-50(即在屏幕上可见的那些,以及一些在屏幕外部且最接近屏幕的缩略图)。滚动时,开始加载更多缩略图。