隐藏空的UITableViewCell

时间:2012-11-16 19:30:46

标签: objective-c ios admob

我正在使用AdMob在我的UITableView中展示广告。它工作正常,但是当广告更改单元格时,我的表格中会出现空单元格。

我怎样才能隐藏旧的空单元格?请参阅图片了解问题

enter image description here

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    int row = [indexPath row];
    NSString *CellIdentifier = @"Cell";
    if(kAdFrequency - 1 == row%kAdFrequency){
        CellIdentifier = @"AdCell";
        UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

        [cell addSubview:_banner];
        return cell;
    }else{
        row = row - floor((float)row/kAdFrequency);

        UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

        NGNationEventDay* day = [_events objectAtIndex:indexPath.section];
        NGNationEvent* event = [day.events objectAtIndex:row];

        cell.textLabel.text = event.name;
        cell.detailTextLabel.text = event.category;

        return cell;
    }
}

1 个答案:

答案 0 :(得分:0)

我认为一般来说,这样做的最佳方法就是确保您的广告一次显示在屏幕上永远不会有两个广告单元的频率上(您可以修改kAdFrequency以使其成为情况)。