2010-12-14 7 views
0

Je suis sûr que c'est une solution simple, mais je n'arrive pas à le trouver. J'ai une vue de table qui fonctionne actuellement très bien, mis en place comme:iPhone Admob UITableView troubles

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; 

Le SDK Admob dit d'ajouter cette ligne:

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

Mais il remplit chaque cellule avec des annonces. Des pensées?

EDIT: J'utilise ce code pour remplir:.

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

Répondre

0

Vous voulez faire uniquement sur les lignes particulières que vous voulez que les annonces apparaissent dans

Donc, si vous vouliez n'apparaît que sur la première ligne, vous pouvez faire quelque chose comme

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

Cela provoque en fait un comportement étrange. Il recouvre mon premier objet et le dernier objet. Ensuite, lorsque je défile, il commence à faire apparaître des publicités aléatoires dans des cellules aléatoires. – startuprob

+0

@Rob: vous devez supprimer correctement la vue des cellules dans lesquelles vous ne les souhaitez pas. Les cellules sont réutilisées. Vous devez donc vérifier et supprimer les annonces si elles ne figurent pas dans la ligne spécifique dans laquelle vous souhaitez les placer. il est, ce n'est pas clair ce que vous avez l'intention de faire avec les annonces dans la table. Si vous les ajoutez directement aux cellules, la vue couvrira cette cellule. Si vous pouviez être plus précis avec vos besoins, je pourrais avoir une meilleure idée de la réponse à donner. –

+0

Je suis actuellement en train de peupler les cellules avec un NSArray qui a 11 objets. Je voudrais que l'annonce remplisse la première et seulement la première cellule. J'ai édité mon post pour montrer comment il est peuplé. – startuprob