2012-10-30 101 views
2

當我添加圖像到UITableView,即時通訊注意到他們第一次被添加到單元格時,我得到一個生澀的滾動。UITableView慢速滾動UIImage

我不加載它們在遠程,而不是我的代碼如下所示:

static NSString *CellIdentifier = @"Cell"; 
UITableViewCell *cell = [self.tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath]; 

MyObject *object = [self.myObjects objectAtIndex:indexPath.row]; 
cell.imageView.image = [UIImage imageNamed:object.imageName]; 

return cell; 

(沒有,如果(細胞==無)線作爲即時通訊在視圖中註冊的小區類別做負載)

這是一個不好的方法嗎?如果是這樣,我應該如何將主包中的圖像添加到我的單元格的imageView中?

+0

你使用任何cornerRadius的imageview? – Kassem

+0

不需要石英或任何類似的東西。 。 。 –

+0

你的圖像有多大? – Puran

回答

1
  1. 儘量減少圖像

  2. 的大小如果您不能縮小尺寸以任何理由,試試下面的代碼(operationQueue是NSOperationQueue實例的伊娃)

    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 
    { 
        UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"identifier"]; 
        [operationQueue addOperationWithBlock:^{ 
         NSString *imagePath = [[NSBundle mainBundle] pathForResource:@"name" ofType:@"jpg"]; 
         UIImage *image = [[UIImage alloc] initWithContentsOfFile:imagePath]; 
         [[NSOperationQueue mainQueue] addOperationWithBlock:^{ 
          UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath]; 
          cell.imageView.image = image; 
         }]; 
        }]; 
        return cell; 
    }