第一个可见的UITableView行在加载时不显示数据......但是然后在滚动上执行

第一个可见的UITableView行在加载时不显示数据......但是然后在滚动上执行

问题描述:

我有一个UITable,它显示了来自Web服务的10个最新图像。每一行都有自己的图像。当UITable在视图控制器中首次加载时,它不会显示行中的前4个图像(屏幕为空白)。如果我向下滚动显示最后6个图像....那么如果我回滚前4个图像,这些图像最初不会出现,并且一切看起来都是我最初想要的方式。我的猜测是它的细胞被重用的方式。第一个可见的UITableView行在加载时不显示数据......但是然后在滚动上执行

这里是我的tableView代码:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    static NSString *CellIdentifier = @"Cell"; 
    UITableViewCell *cell = [_tableView dequeueReusableCellWithIdentifier:CellIdentifier]; 
    if (cell == nil) 
    { 
     cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault  reuseIdentifier:CellIdentifier]; 
     cell.selectionStyle = UITableViewCellSelectionStyleBlue; 
    } 
    [cell.contentView.subviews makeObjectsPerformSelector:@selector(removeFromSuperview)]; 
    [cell.contentView addSubview:[self.photoList objectAtIndex:indexPath.row]]; 
    return cell; 
} 

什么解决我的问题是将下面的行我的方法与从Web API流的照片涉及:

[_tableView reloadData]; 

我注意到,如果我在“故事板”的“表格视图”中上下移动表格视图单元格以更改不可见行的位置。所以我通过将表格视图单元设置为隐藏来解决了这个问题。

+0

尝试在答案中添加一些代码的相关部分以使其更清晰。 – shivam