2010-12-14 12 views
0

これは簡単な修正だと確信していますが、見つけられないようです。私のように設定し、現在だけで正常に動作テーブルビューを持っている:iPhone AdMob UITableViewの問題

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]]; 

をしかし、それは広告ですべてのセルに移入されます。何かご意見は?

EDIT: 私は移入し、このコードを使用しています:

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

答えて

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]; 
} 
+0

これは実際にはいくつかの奇妙な動作を引き起こします。それは私の最初のオブジェクトと最後のオブジェクトをカバーします。次に、スクロールすると、ランダムなセルでランダムな広告がポップされます。 – startuprob

+0

@Rob:セルを再利用するため、セルが再利用されるため、必要な特定の行にない広告を確認して削除する必要があります。それはあなたがテーブル内の広告で何をしたいのかはかなり不明です。それらをセルに直接追加する場合は、そのビューがそのセルをカバーします。あなたのニーズにより具体的にできるなら、私はどの答えを与えるかについてより良い考えを得ることができます。 –

+0

私は現在、11個のオブジェクトを持つNSArrayでセルを設定しています。最初のセルにのみ広告を挿入したいと思います。私はポストを編集して、どのようにポピュレートされているかを示しています。 – startuprob