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 に答える