我想要UITableView
每 13 个单元格包含一个 Admob 横幅。这确实有效,但我的问题是我想显示不同的横幅(目前有 4 个)。因此,在单元格 13 我们有横幅 1,在单元格 26 有横幅 2,依此类推。
我的问题是,我不知道如何实现这一点。目前我在每个单元格中收到第一个横幅 - 我猜 - 这意味着代码只在每个单元格中加载 1 个横幅,然后说“是的。我有我的广告。现在我很高兴”然后不加载 2 个横幅在 26 单元格中。
我确实对我的“AdCell”进行了子类化,并有一个 Bool,上面写着“hasAD”,以防止滚动时每个单元格都重新加载(但也许这是我的问题的一部分?)。也许你可以帮助我。
表中的单元格:
AdCell *cell = (AdCell *)[tableView dequeueReusableCellWithIdentifier:@"AdCell"];
cell.tag = 4;
if (cell == nil) {
cell = [[AdCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"AdCell"];
}
if (![cell hasAD]){
// Create a view of the standard size at the bottom of the screen.
// Available AdSize constants are explained in GADAdSize.h.
GADAdSize customAdSize = GADAdSizeFromCGSize(CGSizeMake(290, 120));
DFPBannerView *bannerView_ = [[DFPBannerView alloc] initWithAdSize:customAdSize];
//The AdCounter is what i said with banner1,banner2
if (adCounter == 4){
adCounter = 1;
}
bannerView_.adUnitID = [NSString stringWithFormat:@"LEFTOUT-%i/banner",adCounter];
// Let the runtime know which UIViewController to restore after taking
// the user wherever the ad goes and add it to the view hierarchy.
bannerView_.rootViewController = self;
//Center AD
[bannerView_ setCenter:CGPointMake(cell.center.x, cell.center.y)];
[cell.contentView addSubview:bannerView_];
// Initiate a generic request to load it with an ad.
[bannerView_ loadRequest:[GADRequest request]];
adCounter++;
[cell setHasAD];
}
return cell;