2012-01-31 53 views
1

我正在使用懶表下載圖像並將圖像保存到文檔文件夾中。圖像以表格形式顯示。表視圖圖像應用程序中的內存警告 - 懶惰的下載

表視圖具有在一個頁36倍的圖像,和大約10頁。

我得到了一次又一次的內存警告。

任何人都可以建議我如何解決這個問題?
因爲我已經刪除了所有的對象,但問題還沒有解決。

+0

你必須發佈一些相關的代碼,否則我們只是猜測。 – 2012-01-31 15:20:50

+0

您使用ARC嗎?如果不能確保在從屏幕上滾動時釋放所有圖像。否則,你會得到內存問題。確保你已經在你所有的自定義視圖中實現了 - (void)dealloc並釋放你保留的任何東西! – 2012-01-31 15:37:44

+0

你試過緩存圖片嗎? – 2012-01-31 15:45:36

回答

0

我覺得你的代碼中有內存泄漏,您可以通過使用配置文件(CMD + I)檢查, 或者你可以嘗試這樣的。

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    static NSString *cellIdentifier = @"cellIndentifier"; 
    UITableViewCell *cell; 

    cell = [_tableView dequeueReusableCellWithIdentifier:cellIdentifier]; 
    if (cell == nil) { 
#if __IPHONE_OS_VERSION_MIN_REQUIRED >= __IPHONE_3_0 
     cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellIdentifier] autorelease]; 
#else 
     cell = [[[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:cellIdentifier] autorelease]; 
#endif 
     cell.selectionStyle = UITableViewCellSelectionStyleNone; 
    } else { 
     [[cell.contentView viewWithTag:999] removeFromSuperview]; 
    } 

    //imageView 
    UIImage *image = [UIImage imageWithContentsOfFile:@"filePath"]; 
    UIImageView *imageView = [[UIImageView alloc] initWithImage:image]; 
    imageView.tag = 999; 
    [cell.contentView addSubview:imageView]; 
    [imageView release]; 

    return cell; 
}