swift - Admob adView DidReceive 广告在 UITableViewCell 中不起作用

标签 swift admob tableview

我的 TableView 单元格中有一个 Admob 横幅。一切似乎都正常,但是当我尝试让 func adViewDidReceiveAd(_bannerView: GADBannerView!) 正常工作时。这是我到目前为止的代码:

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        let cell = tableView.dequeueReusableCell(withIdentifier: "Ad_Cell", for: indexPath) as! Native_Ad_TableViewCell

        cell.bannerView.adUnitID = "xx-xxx-xxx-xxxxxxxxxxxxxxxxx"
        cell.bannerView.rootViewController = self
        cell.bannerView.load(GADRequest())
        cell.bannerView.delegate = self

        return cell
}

在我的 tableviewCell 中:

class Native_Ad_TableViewCell: UITableViewCell, GADBannerViewDelegate {

    @IBOutlet weak var bannerView: GADBannerView!

    override func awakeFromNib() {
        super.awakeFromNib()
        bannerView.isHidden = true
    }

    func adViewDidReceiveAd(_ bannerView: GADBannerView!) {
        bannerView.isHidden = false
        print("Ad Loaded")
    } 
}

func adViewDidReceiveAd(_bannerView: GADBannerView!) 即使我知道广告已加载,也不会随时调用。有人知道这个问题的解决方案吗?

最佳答案

如果未调用func adViewDidReceiveAd(_bannerView: GADBannerView!),请检查GADBannerView的框架大小。你的frame不应该等于.zero,我最近也遇到了和你一样的问题。

如果您的bannerView 有框架,请检查您的AdManager 帐户中的尺寸。尺寸应该与您的bannerView 框架完全相同。

为了进行测试,您可以使用此 AdUnitId 进行测试:ca-app-pub-3940256099942544/2934735716 More AdUnitId here

关于swift - Admob adView DidReceive 广告在 UITableViewCell 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57436648/

相关文章:

swift - 将 unicode 转换为表情符号

ios - 如何更改等待 SKScene 运行的 SKAction 的持续时间?

ios - 仅在特定场景中显示 adMob 横幅; swift

ios - Xcode5 Google Admob sdk 链接器命令失败,退出代码为 1

ios - 如何在表格 View 上设置拖动 handle 的自定义图像和位置

ios - TableView 显示项目中的图像

ios - 动画 UIImageView

ios - SceneKit如何绘制上万条线?

android - Admob 不生成视觉效果

javafx tableview仅在排序后更新数据