我有一個應用程序,其中tableViewCell下載圖像並設置爲縮略圖。我的問題是,我可以看到縮略圖圖像刷新的唯一方法是如果我點擊另一個選項卡,然後回到tabViewCell被保留的選項卡。以下是設置縮略圖的代碼。在縮略圖下載後重新加載UItableViewCell
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *cellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier forIndexPath:indexPath];
PFObject *message = [self.messages objectAtIndex:indexPath.row];
cell.textLabel.text = [message objectForKey:@"username"];
cell.imageView.image = [UIImage imageNamed:@"Treehouse.png"];
PFFile *thumbnail = nil;
if (thumbnailArray.count > 0){
thumbnail = [[thumbnailArray objectAtIndex:indexPath.row] objectForKey:@"imageFile"];
dispatch_async(backgroundQueue, ^{
NSURL *thumbnailURL = [[NSURL alloc]initWithString:thumbnail.url];
NSData *thumbnailData = [NSData dataWithContentsOfURL:thumbnailURL];
[[cell imageView]setImage:[UIImage imageWithData:thumbnailData]];
[tableView reloadRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationNone];
});
}
return cell;
}
'[cell layoutIfNeeded];' – Jano
我已經放置了[cell layoutIfNeeded];在聲明單元格變量之後,我的問題依然存在。你在哪裏建議我放置該方法? – TheM00s3
您正在後臺線程上更新您的用戶界面。大不,不。發送到主線程。 – Stonz2