1

我有一个显示用户列表的表格视图。每个单元格中的头像图像使用 UIImageView+AFNetworking 异步下载并使用 UIImage+TPAdditions 显示。这是我的代码片段,来自 cellForRowAtIndexPath:

if (cell==nil){
    cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:SimpleTableIdentifier];
}

cell.textLabel.text = [[global.people objectAtIndex:indexPath.row]name];


// setImageWithUrl:placeholderImage: is taken from UIImageView+AFNetworking

NSString* imgURL =  [[global.people objectAtIndex:indexPath.row]avatar_url];
UIImageView* imgV = [[UIImageView alloc]init];
[imgV setImageWithURL:[NSURL URLWithString:imgURL] placeholderImage:[UIImage imageNamed:@"icon.png"]];

//These are just for formatting and are taken from UIImage+TPAdditions

cell.imageView.image = [imgV.image imageScaledToSize:CGSizeMake(43,43)];
cell.imageView.layer.masksToBounds = YES;
cell.imageView.layer.cornerRadius = 5.0;

现在,当应用程序加载时,我们只会看到占位符图像,直到用户上下滚动 tableview。然后将来自 URL 的头像图像加载到每个单元格的图像视图中。我想这样做,这样就不需要滚动了——我希望头像图像在下载后立即“弹出”到它们各自单元格的表格视图中。我知道 NSNotification 可能对我有帮助,但我不确定在哪里/如何使用它。我对iOS相当陌生。任何人都可以引导我完成它吗?谢谢

4

1 回答 1

1

您需要在视图上调用setNeedsDisplay以强制刷新。您将在异步调用的完成处理程序中调用它。

于 2012-09-18T17:19:31.360 回答