2011-08-30 27 views
0

我有单元格的uitableview。我用ASIHttpRequest为每个单元下载异步图像,并在下载完成后将图像放入单元格。图片下载很好,但是当我点击单元格时,或者滚动我的uitableview时,它会显示。如何设置图像并立即显示?uitableviewcell update

NSURL *photoURL = [NSURL URLWithString:urlString]; 
    __block ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:photoURL]; 
    [request setDownloadCache:[ASIDownloadCache sharedCache]]; 
    [request setCompletionBlock:^{  
    NSData *responseData = [request responseData]; 
    cell.imageView.image = [UIImage imageWithData:responseData]; 
    }]; 
    [request startAsynchronous]; 
     //other code (cell.textLabe.text = ...) etc. 

这里与点击它之前细胞的截图,后:

前:

Before

后:

After

回答

0

尝试把[tableView reloadData]内完成块。

+0

这没有帮助:( 只适用于第一次加载当我开始滚动时,我发现图像被错误地曝光,并慢慢暴露在那里的地方,在真实的设备上它会有滞后 –

0

第一个猜测,你定义你的ImageView或调用委托didSelectedRowAtIndexPath方法图像因此它在您点击单元格时出现。基本上要解决你的问题,只需在cellForRowAtIndexPath方法中移动你的代码即可。