2011-08-14 60 views
0

当我通过惰性图像加载滚动到UITableView的新区域时,无论我现在在做什么,新区域都不会显示新区域图片。UIImage不会在UITableView中加载惰性图像加载

我的代码基于苹果懒表视图。直到现在,我认为它是与Web服务器的东西,但我现在有缓存功能,所有图像都从iPhone文件加载,所以肯定有我的代码中有错误。

同样,图像不仅在那种情况下所示:

  1. 的UITableView加载数据

  2. 所有可见的细胞被正确显示的图像。

  3. 如果我滚动到新的区域,移动到老区* 迅速 *并返回到新的区域的图像将不会加载,无论在哪里我现在(只在新区域的图像滚动说我快速从不会加载)

  4. 所有在其他情况下,图像显示正确。

+0

请参考以下链接 http://stackoverflow.com/questions/1130089/lazy-load-images-in-uitableview 希望它有助于.. –

回答

0

没有看到一些代码很难说。如果你的显示与NSURLConnection的回调绑定,你可能会失去对委托的引用。

当您滚动单元格视图获取与新单元格中的数据重新填充。如果NSURLConnection在单元视图之外运行,则可能失去对其委托的引用。如果NSURLConnection没有委托来激发完整的方法,那么它将不会被调用。当你滚动到新的单元格时,NSURLConnection已经完成,所以它不会再次调用完成,并且微调器继续前进。

+0

我再次测试了这一点。 我认为,如果财产以后有: 如果 如果(self.m_tableView.dragging == NO && self.m_tableView.decelerating == NO) { [自statIconDownload:appRecord forIndexPath:indexPath](appRecord.m_imgImage!); } – tex1001

+0

这意味着,出于奇怪的原因,单元格会在短时间内快速显示,然后向后滚动查看它们,只有这些单元格具有:拖动和减速=是,即使没有滚动,也可以防止开始下载。很奇怪 – tex1001

+0

好吧,我知道了,没有修复它,但问题是在“loadImagesForOnScreenRow”,我不记得,如果这是在苹果示例,但在这段代码,如果我有和图像下载已经没有检查如果它设置为cell.image。 – tex1001

0

我修复它。这个错误与上述内容无关。所以没有什么可以分享和学习。 我认为这对其他人很重要,我会清楚这一点,所以没有人会对我之前写的内容感到困惑。

检查图像已经下载的过程是错误的。

+0

你可以在这个帐户上使用与你曾经问过的一样的电子邮件吗?如果是这样,我可以轻松地合并您的帐户,并且您将能够接受这个问题作为这个问题的答案。 –