0

我确信这是一个简单的修复,但我似乎无法找到它。我有一个当前工作正常的表格视图,设置为:

static NSString *CellIdentifier = @"Cell";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {
        cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier] autorelease];
}


NSUInteger row = [indexPath row];
cell.textLabel.text = [creedsList objectAtIndex:row];
cell.imageView.image = [UIImage imageNamed:[creedsImages objectAtIndex:row]];

return cell;

Admob SDK 说要添加这一行:

[cell.contentView addSubview:[AdMobView requestAdWithDelegate:self]];

但随后它会在每个单元格中填充广告。有什么想法吗?

编辑:我正在使用此代码来填充:

NSUInteger row = [indexPath row];
cell.textLabel.text = [creedsList objectAtIndex:row];
4

1 回答 1

0

您只想在您希望广告出现的特定行上执行此操作。

因此,如果您只想显示在第一行,您可以执行类似的操作

static int adTag = 999; // Used for identifying whether cell already contains ad
UIView * adView = [cell.contentView viewWithTag:adTag];

if(row == 0 && !adView)
{   
    adView = [AdMobView requestAdWithDelegate:self];
    adView.tag = adTag;
    [cell.contentView addSubview:adView];    
}
else if(row != 0 && adView)
{
    // Must remove since cells are reused.
    [adView removeFromSuperview];
}
于 2010-12-14T01:20:08.550 回答