2011-09-06 94 views
4

我正在使用https://github.com/rs/SDWebImage在UITableView中加載圖像。 這裏是我是如何實現它(簡單),裏面的cellForRowAtIndexPathSdwebimage EXC_BAD_ACCESS

[cell.imageView setImageWithURL:[NSURL URLWithString:[item valueForKey:@"icon"]]placeholderImage:[UIImage imageNamed:@"icon_events_default.png"]]; 

圖像中的UITableView加載後,我向下滾動,並且比再升,我收到錯誤:EXC_BAD_ACCESS

- (void)setImageWithURL:(NSURL *)url placeholderImage:(UIImage *)placeholder 
{ 
    SDWebImageManager *manager = [SDWebImageManager sharedManager]; 

    // Remove in progress downloader from queue 
    [manager cancelForDelegate:self]; 

    UIImage *cachedImage = [manager imageWithURL:url]; 

    if (cachedImage) 
    { 
    //EXC_BAD_ACCESS hapens here 
    self.image = cachedImage; 
    } 
    else 
    { 
    if (placeholder) 
    { 
     self.image = placeholder; 
    } 

    [manager downloadWithURL:url delegate:self]; 
    } 
} 

任何幫助真的很感激。

回答

1

您是否通過樂器中的殭屍運行此代碼?這應該立即指出問題。只需從產品菜單中選擇配置文件,儀器將啓動,選擇殭屍儀器,然後運行導致此問題的測試場景,並且您應該看到一個殭屍彈出窗口,它顯示了一個對象如何仍然被使用,即使它不再有效。

如果我不得不猜測,你的UITableViewCell沒有被正確的保留,它要麼被釋放,要麼在圖像加載之前重複使用太快。